mrD-Smart RangesmrD-Smart Ranges aims to offer a complete strategy based on Order Blocks. Ranges signals based on order volume are highlighted, from which smart ranges are suggested to provide potential entries.
This script also includes warnings for each signal marked.
🔶 SETTINGS
Pair Strategy: Select the desired from the list. Change the chart to the one specified in the Strategy.
Current TF Order Blocks: Allows the user to select how many most recent Internal Order Blocks appear in the current time frame on the chart.
Order Block Filter: Allows the user to select how the script mitigates an Order Block.
Hide Overlap: Allows the user to display overlapping Order Blocks.
Show Metrics: Allows the user to display volume % metrics within the Order Blocks.
Show Volume Box: Allows the user to display buy/sell activity within Order Blocks.
High Timeframe: Allows the user to choose a higher or lower timeframe to find the Signals.
Show Failed Buy Sell: Allows the user to display the Signals.
Show HTF Box: Allows the user to display a higher or lower timeframe Order Blocks.
🔶 DETAILS
Order blocks are formed after a slight bearish order block, these can provide an opportunity to change polarity, thus acting as a potential support/resistance level.
A retest/retrace on the order block, combined with order volume between the current timeframe and from the higher timeframe will establish the conditions for smart ranges are suggested to provide potential entries.
🔶 USAGE
mrD-Smart Ranges aims to provide users with a minimalistic screen next to the optimal ranges to keep in mind to find trading setups as shown below.
Here we can see a suggested Sell range and display a label to confirm this range
Signal(s) that can be used for potential entries only during range retest are order blocks.
Users can search for more potential entry ranges based on larger timeframes in the settings: High Timeframe
In the image above, we can see that the price has generated potential orange and bearish entry signals. A confirmation signal with a red label is displayed on the chart when the price retests the Sell range.
Note: While range retests can still work well if they occur later in price action, it's best to look for signals only when price retests the range at the outset rather than retesting it. second price.
The logic of generating signal ranges using different rules is described below:
- Define order blocks in the current timeframe.
- Define the order blocks with the largest volume in the current timeframe.
- Define order blocks in larger timeframes in High Timeframe settings
- Define order blocks with the largest volume in larger timeframes in High Timeframe settings
Entry Range: The combination of the highest volume order blocks in the current timeframe and the highest volume order blocks in the larger timeframe.
🔶General disclaimer:
Trading stocks, futures, forex, options, ETFs, cryptocurrency, or any other financial instrument has huge potential rewards and risks.
You must be aware of the risks and willing to accept them to invest in stocks, futures, forex, options, ETFs, or cryptocurrencies.
Don't trade with money you can't afford to lose.
This is not an offer or an offer to Buy/Sell stocks, futures, Forex, options, ETFs, cryptocurrencies, or any other financial instrument.
Do not represent that any account will or is likely to achieve profit or loss of any kind.
The past performance of any trading system or method is not necessarily indicative of future results.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
חפש סקריפטים עבור "order block"
SMC Liquidity ZonesThis script implements a "Smart Money Concept (SMC) Liquidity Zones" indicator in Pine Script™ for TradingView. It helps identify key liquidity zones, detect potential order blocks, and highlight market structure breaks. The script is designed for traders who use liquidity concepts and order blocks to make informed trading decisions based on price action.
1. Indicator Overview:
The "SMC Liquidity Zones" indicator plots areas of high and low liquidity and detects potential order blocks after price breaks these zones. It also highlights market structure shifts when price moves past the liquidity zones, allowing traders to identify potential areas of price reversal or continuation.
2. Key Features:
Liquidity Zones:
Liquidity zones are regions where price is likely to experience strong reactions due to resting orders (buy or sell).
The script identifies these zones by looking for pivot highs and pivot lows using a customizable lookback period.
High Liquidity Zone: Found at pivot highs, indicating a potential zone of sell-side liquidity (where sellers may overwhelm buyers).
Low Liquidity Zone: Found at pivot lows, indicating a potential buy-side liquidity zone (where buyers may absorb selling pressure).
Order Blocks Detection:
After a liquidity zone is broken, the script marks an order block.
Order Block: An area where institutional traders (smart money) might have placed large orders, and price is expected to return to this area for liquidity.
When the price closes above the high liquidity zone, the previous high is assumed to form the order block high, while the closing price forms the order block low.
Similarly, when price closes below the low liquidity zone, the previous low is assumed to form the order block low, and the closing price forms the order block high.
Market Structure Breaks:
Bullish Market Structure Break: Occurs when price closes above the high liquidity zone, potentially signaling an upward trend.
Bearish Market Structure Break: Occurs when price closes below the low liquidity zone, signaling a potential downward trend.
The script highlights these breaks by changing the chart’s background color to green for bullish structure and red for bearish structure.
Customizable Settings:
Pivot Lookback Period: You can set the lookback period to adjust how the indicator identifies pivot highs and lows.
Visibility of Liquidity Zones and Order Blocks: The script provides options to toggle the display of liquidity zones and order blocks on or off, allowing traders to customize the chart view.
3. Code Structure:
Liquidity Zones Identification:
The script uses the ta.pivothigh() and ta.pivotlow() functions to detect pivot points over a customizable lookback period.
These pivots mark significant areas of price where liquidity might rest, and the zones are displayed using dashed lines—red for high liquidity and green for low liquidity.
Order Block Logic:
When price breaks through a liquidity zone (either above or below), the script marks an order block. This block is a potential area where price could return, creating opportunities for entries or exits.
The order block is visualized as a blue box on the chart, indicating areas where smart money may have positioned their orders.
Market Structure Break Highlights:
The background color changes based on whether the market has broken into a bullish or bearish structure:
Bullish Market Structure: Green background.
Bearish Market Structure: Red background.
This visual cue helps traders quickly assess market sentiment and potential future price direction.
4. Use Case:
This indicator is particularly suited for traders following Smart Money Concepts (SMC), liquidity-based trading, or order block strategies. It helps them:
Identify potential price reaction zones (liquidity zones).
Spot order blocks, which are areas where institutional traders are likely to have placed large orders.
Recognize market structure shifts, signaling potential trend reversals or continuations.
Highlight trading opportunities based on liquidity breaks and market structure changes.
MTF Breaker Blocks [SMRT Algo]The SMRT Algo Breaker Blocks (BBs) indicator offers an advanced methodology for traders by highlighting breaker blocks, a critical concept in technical analysis that indicates potential areas of support and resistance. This indicator not only identifies these key zones but also integrates breakout signals and premium/discount swing levels to guide traders in setting take profit and stop loss targets. The system includes customizable alerts for each signal, ensuring that traders are promptly notified of important market events.
Breaker blocks are identified after a mitigated order block, which signifies a change in polarity—where a previous resistance turns into support or vice versa (or previous demand turned supply).
The indicator uses price action analysis to determine these zones, which are crucial for identifying potential reversal points or continuation patterns. By focusing on these areas, traders can anticipate where significant price reactions are likely to occur.
Features:
Bullish Breaker Blocks: A bullish BB is generated when a previous supply zone is broken. This setup indicates that the market may be transitioning from a downtrend to an uptrend.
Bearish Breaker Blocks: A bearish BB is created when a previous demand zone is broken, thus creating a new bearish BB. This scenario suggests a potential shift from an uptrend to a downtrend.
Sensitivity: Traders can adjust the indicator’s sensitivity, influencing how it detects swings and constructs breaker blocks. Higher sensitivity results in shorter-term breaker blocks, while lower sensitivity focuses on longer-term BBs.
Alerts: Alerts can be configured for each signal type, ensuring that traders are notified of potential opportunities in real time.
Traders can utilize Breaker Block (BB) zones in multiple strategic ways to enhance their trading decisions:
Profit Targets: BB zones can serve as predefined areas where traders look to take profits. Since these zones represent significant levels of potential support or resistance, they are logical points where the price might reverse or consolidate. By targeting these zones, traders can set realistic and strategic exit points that align with the market's natural behavior, thereby optimizing their profit-taking strategy.
Risk Management: Using BB zones for profit targets also assists in managing risk, as it allows traders to plan their trades with a clear understanding of where they expect the market to move. This foresight helps in setting stop-loss levels relative to the BB zones, creating a balanced risk-reward profile for each trade.
Entry Points & Anticipating Reversals: BB zones are ideal entry points for trades because they highlight areas where a change in price direction is likely. Traders can enter long positions near a BB zone acting as support or short positions near a BB zone acting as resistance. This approach leverages the natural tendency of prices to respect these significant levels, increasing the probability of entering a trade just as the market begins to move in the desired direction.
Confirmation with Additional Indicators: While BB zones can be strong standalone signals, their effectiveness can be further enhanced when used in conjunction with other technical indicators, such as moving averages, RSI, or MACD. This combined approach can provide additional confirmation and improve the reliability of the entry signals, making it a versatile tool in a trader's arsenal.
Inputs:
Timeframe: Changes the Breaker Block timeframe
Sensitivity: Adjust the sensitivity of the BB zones. A smaller value will lead to fewer zones generated on the chart, and a higher value will lead to more zones shown.
Width: Adjust the width (size) of the zones. A smaller value will result in smaller zones, while a larger value will result in larger zones.
Color: Freely adjust the color of bullish and bearish breaker blocks.
Breaker Block Length: Adjust the offset (to the right) of the breaker block zones.
Timeframe Label: The timeframe label is displayed on the top right corner, and can be turned on/off. It shows the timeframe of the MTF Breaker Block. The position and size of the label can also be adjusted.
By incorporating BB zones into their trading strategy, traders can develop a more structured and disciplined approach to both entering and exiting trades, leveraging the unique characteristics of these zones to optimize their trading outcomes.
These components collectively create a system for identifying and trading market reversals and continuations. The breaker blocks provide a structural basis, highlighting areas of potential price reaction.
SMRT Algo’s proprietary approach to identifying and confirming breaker blocks, coupled with our comprehensive alert system, offers a significant edge over standard indicators. This indicator not only provides signals but also embeds a complete trading framework, guiding users through both entry and exit processes with built-in risk management.
Multi-Timeframe Breaker Blocks by SMRT delivers precise and actionable insights making it a valuable asset for serious traders. Traders receive a tool that is both powerful and user-friendly, capable of enhancing their trading performance and decision-making process.
The SMRT Algo Suite offers a comprehensive set of tools and features that extend beyond the capabilities of standard or open-source indicators, providing significant additional value to users.
SMRT Algo Suite includes:
Advanced Customization: Users can customize various aspects of the indicator, such as toggling the confirmation signals on or off and adjusting the parameters of the MA Filter. This customization enhances the adaptability of the tool to different trading styles and market conditions.
Enhanced Market Understanding: The combination of pullback logic, dynamic S/R zones, and MA filtering offers traders a nuanced understanding of market dynamics, helping them make more informed trading decisions.
Unique Features: The specific combination of pullback logic, dynamic S/R, and multi-level TP/SL management is unique to SMRT Algo, offering features that are not readily available in standard or open-source indicators.
Educational and Support Resources: As with other tools in the SMRT Algo suite, this indicator comes with comprehensive educational resources and access to a supportive trading community, as well as 24/7 Discord support.
The educational resources and community support included with SMRT Algo ensure that users can maximize the indicators’ potential, offering guidance on best practices and advanced usage.
SMRT Algo believe that there is no magic indicator that is able to print money. Indicator toolkits provide value via their convinience, adaptibility and uniqueness. Combining these items can help a trader make more educated; less messy, more planned trades and in turn hopefully help them succeed.
RISK DISCLAIMER
Trading involves significant risk, and most day traders lose money. All content, tools, scripts, articles, and educational materials provided by SMRT Algo are intended solely for informational and educational purposes. Past performance is not indicative of future results. Always conduct your own research and consult with a licensed financial advisor before making any trading decisions.
ICT Killzones Toolkit [LuxAlgo]The ICT Killzones Toolkit is a comprehensive set of tools designed to assist traders in identifying key trading zones and patterns within the market.
The ICT Killzones Toolkit includes the following Price Action components:
ICT Killzones with Pivot Highs/Lows
Order Blocks
Breaker Blocks
Fair Value Gaps
Market Structure Shifts
By combining these components, the ICT Killzones Toolkit provides traders with a comprehensive framework for analyzing the market and identifying setups of interest. Leveraging these tools effectively can enhance traders' decision-making process and improve killzones interpretability.
🔶 USAGE
In forex/futures trading, timing is crucial. ICT Killzone are specific periods when there's a higher chance of finding setups of interest. Mastering these time intervals can offer significant advantages to traders who know how to use them effectively.
The image above highlights a potential setup of interest when using the ICT Killzones Toolkit.
As another example for utilizing the ICT Killzones Toolkit, we can see in the image above when price retests setups generated from killzones such as Order Blocks or Fair Value Gaps, a potential strategy could be to look for entries on those & take profits as the next killzone appears.
🔹 Order Blocks
Order Blocks are sections on a price chart where notable buying or selling activity has occured, often signaling interest zones for institutional traders. This toolkit's Order Blocks component pinpoints these areas within the Killzone, which may act as potential support or resistance levels.
🔹 Breaker Blocks
Breaker Blocks are zones built from mitigated order blocks, and highlight zones on the chart where price has previously stalled or reversed. These areas may act as significant barriers to price movement in the future, and the Breaker Blocks component helps traders identify them for potential trading opportunities.
🔹 Fair Value Gaps
Fair value gaps are especially favored by price action traders and arise from market inefficiencies or imbalances, typically when buying and selling are unequal. These gaps often attract price movement before resuming in the same direction. the Fair Value Gaps component of the toolkit helps traders identify and analyze them.
🔹 Market Structure Shifts
Market Structure Shifts refer to significant changes in the overall structure of the market, such as shifts in trend direction, volatility, or trading activity. These shifts can provide valuable insights into market sentiment and potential trading opportunities, and the Market Structure Shifts component helps traders identify and interpret them.
Overall, the ICT Killzone Toolkit combines these components to provide traders with a comprehensive framework for analyzing the markets and identifying high-probability trading setups.
🔶 SETTINGS
🔹 ICT Killzones
Asian, London Open, New York, and London Close: toggles the visibility of specific Killzones, allowing users to customize time periods and Killzone colors.
Killzone Lines : Top/Bottom, Mean and Extend Top/Bottom: toggles the visibility of the Killzone's pivot high and low lines, mean (average) line, and allows users to extend the pivot lines.
Killzone Labels: Toggles the visibility of the Killzone labels.
Display Killzones within Timeframes Up To: Toggles the visibility of the Killzones up to selected Timeframes.
Open Price, Separator, Label, and Color: toggles the visibility of the open price of the Killzones or for the day, week, or month. If the day, week, or month is selected, a separator will be displayed to highlight the beginning of each respective period. Additionally, users can customize the color and toggle the label as needed.
🔹 Order Blocks & Breaker Blocks
Order Blocks | Breaker Blocks: toggles the visibility of the order blocks & breaker blocks.
Swing Detection Length: lookback period used for the detection of the swing points used to create order blocks & breaker blocks.
Mitigation Price: allows users to select between closing price or wick of the candle.
Use Candle Body in Detection: allows users to use candle bodies as order block areas instead of the full candle range.
Remove Mitigated Order Blocks & Breaker Blocks: toggles the visibility of the mitigated order blocks & breaker blocks.
Extend Order Blocks & Breaker Blocks: enables processing of the order blocks & breaker blocks beyond the boundaries of the killzones.
Display Order Blocks & Breaker Blocks: enables the display of the first, last, or all occurrences of the order blocks & breaker blocks.
Order Blocks : Bullish, Bearish Color: color customization option for order blocks.
Breaker Blocks : Bullish, Bearish Color: color customization option for breaker blocks.
Show Order Blocks & Breaker Blocks Text: toggles the visibility of the order blocks & breaker blocks labels.
🔹 Market Structure Shifts
Market Structure Shifts: toggles the visibility of the market structure shifts.
Detection Length: market structure shift detection length.
Display Market Structure Shifts: enables the display of the first, last, or all occurrences of the market structure shifts.
Market Structure Shifts : Bullish, Bearish Color: color custumization option for market structure shifts.
Show Market Structure Shifts Text: toggles the visibility of the market structure shifts labels.
🔹 Fair Value Gaps
Fair Value Gaps: toggles the visibility of the fair value gaps.
Fair Value Gap Width Filter: filtering threshold wile detecting fair value gaps.
Remove Mitigated Fair Value Gaps: removes mitigated fair value gaps.
Extend Fair Value Gaps: enables processing of the fair value gaps beyond the boundaries of the killzones.
Display Fair Value Gaps: enables the display of the first, last, or all occurrences of the fair value gaps.
Bullish Imbalance Color: color customization option.
Bearish Imbalance Color: color customization option.
Show Fair Value Gaps Text: toggles the visibility of the fair value gaps labels.
🔶 RELATED SCRIPTS
Smart-Money-Concepts
Order-Blocks-Breaker-Blocks
Thanks to our community for recommending this script. For more conceptual scripts and related content, we welcome you to explore by visiting >>> LuxAlgo-Scripts .
Quantum Delta Zones with EnhancementsQuantum Delta Zones (QDZ)
Short Title: QDZ
Overview
The Quantum Delta Zones (QDZ) is a unique technical indicator designed to highlight high-probability order block zones in the market based on a combination of Delta Sensitivity, order block tightness, and volume-based filters.
This indicator helps traders to identify key support and resistance levels (bullish and bearish order blocks) that are backed by strong volume and optimal market structure. It employs advanced zone detection and automatic zone management (box creation and deletion) to enhance trade analysis.
The primary objective of QDZ is to provide clear, visually appealing support/resistance zones while factoring in market order flow dynamics, ensuring that you are trading at optimal levels with confirmed volume behind it.
Key Features
Delta Sensitivity: The indicator uses a body-to-range ratio to assess the "delta" between the body and wick of each candlestick, helping to identify strong order block formations based on market sentiment.
Order Block Tightness: A filter is used to detect small, tight order blocks where price action shows accumulation (small body candles) near high-probability levels.
Projection Distance: The ability to project the detected order block zones into the future, providing an idea of where price might react based on historical price action.
Fade Strength: Allows you to adjust the transparency of the projected zones, giving you visual flexibility depending on how prominent you want these order blocks to appear.
Volume Filter: A high-volume filter ensures that only zones with substantial volume (based on a moving average) are considered for box creation, preventing false signals and low-probability trades.
Auto Box Deletion: When the market invalidates a zone (price moves beyond the zone’s projected area), the boxes are automatically deleted to keep the chart clean.
Alerts: Built-in alerts for when a bullish or bearish order block is detected, providing real-time notifications of significant potential trading opportunities.
How it Works
Step-by-Step Explanation:
Delta Sensitivity:
A candlestick is considered "Bullish" if the closing price is above the opening price and the body-to-range ratio is above the user-defined delta Sensitivity.
A candlestick is considered "Bearish" if the closing price is below the opening price with the same body-to-range ratio criteria.
Order Block Tightness:
The indicator looks for tight order blocks, where the body-to-range ratio is below the orderBlock Tightness setting, indicating small candles that may represent accumulation or distribution zones.
Volume Filter:
The indicator applies a filter to check if the volume is above the 50-period simple moving average (SMA) and multiplied by the user-defined volume Multiplier. Only zones with sufficient volume are considered.
Box Creation:
Once a valid order block is detected, the corresponding bullish or bearish box is drawn on the chart. These boxes extend forward by the number of bars specified by projection Bars.
Box Deletion:
If the price moves against the order block (for example, if a bullish box is invalidated when the price closes below its bottom), the box is automatically deleted to keep your chart uncluttered.
Alert System:
Alerts can be set for both bullish and bearish order block detection, notifying traders of the formation of a potential market opportunity.
Inputs / Settings
Delta Sensitivity: The ratio between the candlestick body and its range. Higher values mean stronger bullish/bearish pressure is required to trigger the order block detection.
Order Block Tightness: Defines how tight or small an order block should be to qualify for detection. Smaller values are more sensitive to smaller candlesticks.
Projection Distance: The number of bars into the future that the identified order block should be projected. Useful for seeing potential future support/resistance zones.
Fade Strength: Defines the transparency level of the order block boxes. Higher values result in more transparent boxes, lower values make the boxes more opaque.
Auto Delete: Automatically deletes order blocks if they are invalidated by price action.
Volume Filter: When enabled, only order blocks formed with higher-than-average volume will be considered. This helps eliminate low-probability signals.
Volume Multiplier: Multiplies the average volume by this factor to determine whether the current volume qualifies as "high" for an order block detection.
Visuals
Bullish Order Block: A green box is drawn when a bullish order block is detected. The box is projected forward based on the projection Bars setting.
Bearish Order Block: A red box is drawn when a bearish order block is detected. Similar to the bullish box, it is projected forward.
Fading: Both bullish and bearish boxes fade based on the fade Strength, making the most recent zones more visible while fading out older, less relevant zones.
How to Use in Trading
Bullish Order Block:
A bullish order block is a potential buy area. Once price retraces to the bottom of a detected bullish box, traders may consider it a buy zone, especially if it aligns with other technical factors (e.g., support, trend).
Bearish Order Block:
A bearish order block is a potential sell area. Once price retraces to the top of a detected bearish box, traders may consider it a sell zone, particularly in downtrends or near resistance.
Risk Management:
The projection Bars setting helps to set a clear projection distance. Traders should use their own risk management strategies, such as stop-loss placements below/above the order block zones, and take-profit levels based on market conditions.
Volume Confirmation:
The Volume Filter can be very useful for confirming order blocks. Trading only when an order block is accompanied by high volume ensures the zone has institutional or market-maker backing.
Box Deletion:
The Auto Delete feature automatically removes invalidated zones, keeping the chart clean and preventing you from trading out-of-date or broken levels.
Trading Strategy Example
Bullish Setup:
Look for a bullish order block (green box) formed after price has been trending down and volume is high.
Wait for price to retrace back into the order block zone.
Enter long at the bottom of the order block when price shows signs of support (e.g., bullish candlestick pattern).
Set stop-loss below the bottom of the order block and a take-profit target at a significant resistance level.
Bearish Setup:
Look for a bearish order block (red box) formed after price has been trending up and volume is high.
Wait for price to retrace back into the order block zone.
Enter short at the top of the order block when price shows signs of resistance (e.g., bearish candlestick pattern).
Set stop-loss above the top of the order block and a take-profit target at a significant support level.
Limitations
The QDZ indicator is based on historical price action, and while it is designed to identify areas of strong market participation, it does not guarantee future price behavior.
Traders should always combine this indicator with other technical analysis tools, such as trend analysis, oscillators, or fundamental factors, to improve their decision-making process.
Conclusion
The Quantum Delta Zones (QDZ) indicator is a powerful tool for traders looking to pinpoint high-probability order blocks that are backed by volume and strong market dynamics.
It integrates well with existing trading strategies by providing clear, actionable zones of support and resistance, while also offering advanced features like fade strength, auto-deletion, and volume filters.
Whether you're trading intraday or longer-term, this tool can be an essential part of your trading toolbox.
This is an educational idea, trade at your own desecration.
Regards.
Liquidity Trap Detector (LTD)The Liquidity Trap Detector is an advanced trading tool designed to identify liquidity zones and potential traps set by institutional players. It provides traders with a comprehensive framework to align with smart money movements, helping them avoid common retail pitfalls such as bull and bear traps.
The indicator focuses on detecting liquidity sweeps, breaker blocks, and areas of institutional accumulation/distribution. It integrates multiple technical analysis methods to offer high-probability signals and insights into how liquidity dynamics unfold in the market.
Note : This indicator is not designed for beginners; it is intended for traders who already have a solid understanding of trading fundamentals. It is tailored for individuals who are familiar with concepts like liquidity, order blocks, and traps. Traders with at least 6 months to 1 year of trading experience will fully appreciate the power and potential of this indicator, as they will have the necessary knowledge to leverage its features effectively. Beginners may find it challenging to grasp the advanced concepts embedded in this tool.
Why Combine These Elements?
The components of the Liquidity Trap Detector are carefully chosen to address the core challenges of identifying institutional activity and liquidity traps. Here’s why each element is included and how they work together:
1. Order Blocks:
• Purpose: Identify zones where large institutional players accumulate or distribute positions.
• Role in the Indicator: These zones act as primary liquidity areas, where price is likely to reverse or consolidate due to significant order flow.
2. Breaker Blocks:
• Purpose: Highlight areas where liquidity has been swept, leading to potential price reversals or continuations.
• Role in the Indicator: Confirms whether a liquidity trap has occurred and provides actionable levels for entry or exit.
3. ATR-Based Volatility Zones:
• Purpose: Filter signals based on market volatility to ensure trades align with statistically significant price movements.
• Role in the Indicator: Defines dynamic support and resistance zones, improving the accuracy of signal generation.
4. Volume Delta:
• Purpose: Measure the imbalance between aggressive buyers and sellers, often indicating institutional activity.
• Role in the Indicator: Validates whether a liquidity trap is backed by smart money absorption or retail-driven momentum.
5. Trend Confirmation (EMA):
• Purpose: Align liquidity trap signals with the broader market trend, reducing false positives.
• Role in the Indicator: Ensures trades are executed in the direction of the prevailing trend.
What Makes It Unique?
1. Gen 1 Liquidity Zones and Traps:
• The indicator identifies Gen 1 Liquidity Zones, which represent the first areas where liquidity is accumulated or swept. While these zones often lead to reversals, they can sometimes fail, resulting in continuation moves. The indicator highlights these scenarios, helping traders adapt.
• For example, a bull trap identified in a Gen 1 Zone may see price move higher after an initial red candle, completing a secondary liquidity sweep before reversing.
2. Multi-Layer Signal Validation:
• Signals are only generated when liquidity, volume, trend, and volatility align. This ensures high-probability setups and reduces noise in choppy markets.
3. Dynamic Adaptability:
• ATR-based zones and volume delta filtering allow the indicator to adapt to different market conditions, from trending to range-bound environments.
4. Institutional Insights:
• By focusing on liquidity sweeps, order blocks, and volume imbalances, the indicator helps traders align with institutional strategies rather than retail behavior.
How It Works
The Liquidity Trap Detector uses a step-by-step process to identify and validate liquidity traps:
1. Identifying Liquidity Zones:
• Order Blocks: Mark key zones of institutional activity where price is likely to reverse.
• Breaker Blocks: Highlight areas where liquidity sweeps have occurred, signaling potential traps.
2. Filtering with Volatility (ATR):
• ATR defines dynamic support and resistance zones, ensuring signals are only generated near significant price levels.
3. Validating Traps with Volume Delta:
• Volume delta shows whether liquidity sweeps are backed by aggressive buying/selling from institutions, confirming the trap’s validity.
4. Aligning with Market Trends:
• EMA ensures signals align with the broader trend to reduce false positives.
5. Monitoring Gen 1 Liquidity Zones:
• The indicator highlights Gen 1 Liquidity Zones where price may initially reverse or sweep further before a true reversal. Traders are alerted to potential continuation scenarios if volume or momentum suggests unmet liquidity above/below the zone.
How to Use It
Buy Signal:
• Triggered when:
• Price sweeps below an order block and forms a breaker block, indicating a liquidity trap.
• Volume delta confirms aggressive selling absorption.
• ATR volatility zone supports the reversal.
• EMA confirms a bullish trend.
• Action: Enter a Buy trade and set:
• Stop Loss (SL): Below the order block.
• Take Profit (TP): Near the next resistance or liquidity zone.
Sell Signal:
• Triggered when:
• Price sweeps above an order block and forms a breaker block, indicating a liquidity trap.
• Volume delta confirms aggressive buying absorption.
• ATR volatility zone supports the reversal.
• EMA confirms a bearish trend.
• Action: Enter a Sell trade and set:
• SL: Above the order block.
• TP: Near the next support or liquidity zone.
Timeframes:
• Best suited for scalping and intraday trading on lower timeframes (5m, 15m, 1H).
• Can also be applied to swing trading on higher timeframes.
Example Scenarios:
1. Bull Trap in a Gen 1 Zone:
• Price sweeps above a resistance order block, forms a breaker block, and reverses sharply. However, if momentum persists, price may continue higher after a minor pullback. The indicator helps traders anticipate this by monitoring volume and trend shifts.
2. Bear Trap with Secondary Sweep:
• Price sweeps below a support order block but fails to reverse immediately, instead forming a secondary liquidity sweep before turning bullish. The indicator highlights both scenarios, allowing for flexible trade management.
Why Use It?
The Liquidity Trap Detector offers:
1. Precision: Combines multiple filters to identify institutional liquidity traps with high accuracy.
2. Adaptability: Works across trending and range-bound markets.
3. Smart Money Alignment: Helps traders avoid retail traps by focusing on liquidity sweeps and institutional behavior.
ICT Setup 02 [TradingFinder] Breaker Blocks + Reversal Candles🔵 Introduction
The "Breaker Block" concept, widely utilized in ICT (Inner Circle Trader) technical analysis, is a crucial tool for identifying reversal points and significant market shifts. Originating from the "Order Block" concept, Breaker Blocks help traders pinpoint support and resistance levels. These blocks are essential for understanding market trends and recognizing optimal entry and exit points.
A Breaker Block is essentially a failed Order Block that changes its role when price action breaks through it. When an Order Block fails to hold as a support or resistance level, it reverses its function, becoming a Breaker Block.
There are two primary types : Bullish Breaker Blocks and Bearish Breaker Blocks. These Breaker Blocks align with the prevailing market trend and indicate potential entry points after a liquidity sweep or a shift in market structure.
Understanding and applying the Breaker Block strategy enables traders to capitalize on the behavior of institutional investors, enhancing their trading outcomes.
Bullish Setup :
Bearish Setup :
🔵 How to Use
The ICT Setup 02 indicator designed to automate the identification of Bullish and Bearish Breaker Blocks. This tool enables traders to easily spot these blocks on a chart and utilize them for entering or exiting trades. Below is a breakdown of how to use this indicator in both bullish and bearish setups.
🟣 Bullish Breaker Block Setup
A Bullish Breaker Block setup is identified in an uptrend, where it serves as a potential entry point. This setup occurs when a Bearish Order Block fails and the price moves above the high of that Order Block. In this scenario, the previously bearish Order Block turns into a Bullish Breaker Block, which now acts as a support level for the price.
To trade a Bullish Breaker Block, wait for the price to retest this newly formed support level. Confirmation of the uptrend can be achieved by analyzing lower time frames for further market structure shifts or other bullish indicators.
A successful retest of the Bullish Breaker Block provides a high-probability entry point for a long trade, as it signals institutional support. Traders often place their stop-loss below the low of the Breaker Block zone to minimize risk.
🟣 Bearish Breaker Block Setup
A Bearish Breaker Block setup, conversely, is used in a downtrend to identify potential sell opportunities. This setup forms when a Bullish Order Block fails, and the price moves below the low of that Order Block.
Once this Order Block is broken, it reverses its role and becomes a Bearish Breaker Block, providing resistance to the price as it pushes downward. For a Bearish Breaker Block trade, wait for the price to retest this resistance level.
A confirmation of the downtrend, such as a market structure shift on a lower time frame or additional bearish signals, strengthens the setup. The Bearish Breaker Block retest provides an opportunity to enter a short position, with a stop-loss placed just above the high of the Breaker Block zone.
🔵 Settings
Pivot Period : This setting controls the look-back period used to identify pivot points that contribute to the detection of Order Blocks. A higher period captures longer-term pivots, while a lower period focuses on more recent price action. Adjusting this parameter allows traders to fine-tune the indicator to match their trading time frame.
Breaker Block Validity Period : This setting defines how long a Breaker Block remains valid based on the number of bars elapsed since its formation. Increasing the validity period keeps Breaker Blocks active for a longer duration, which can be useful for higher time frame analysis.
Mitigation Level BB : This option lets traders choose the level of the Order Block at which the price is expected to react. Options like "Proximal," "50% OB," and "Distal" adjust the zone where a reaction may occur, offering flexibility in setting up the entry and stop-loss levels.
Breaker Block Refinement : The refinement option refines the Breaker Block zone to display a more precise range for aggressive or defensive trading approaches. The "Aggressive" mode provides a tighter range for risk-tolerant traders, while the "Defensive" mode expands the zone for those with a more conservative approach.
🔵 Conclusion
The Breaker Block indicator provides traders with a sophisticated tool for identifying key reversal zones in the market. By leveraging Breaker Blocks, traders can gain insights into institutional order flow and predict critical support and resistance levels.
Using Breaker Blocks in conjunction with other ICT concepts, like Fair Value Gaps or liquidity sweeps, enhances the reliability of trading signals. This indicator empowers traders to make informed decisions, aligning their trades with institutional moves in the market.
As with any trading strategy, it is crucial to incorporate proper risk management, using stop-losses and position sizing to minimize potential losses. The Breaker Block strategy, when applied with discipline and thorough analysis, serves as a powerful addition to any trader’s toolkit.
Trading IQ - ICT LibraryLibrary "ICTlibrary"
Used to calculate various ICT related price levels and strategies. An ongoing project.
Hello Coders!
This library is meant for sourcing ICT related concepts. While some functions might generate more output than you require, you can specify "Lite Mode" as "true" in applicable functions to slim down necessary inputs.
isLastBar(userTF)
Identifies the last bar on the chart before a timeframe change
Parameters:
userTF (simple int) : the timeframe you wish to calculate the last bar for, must be converted to integer using 'timeframe.in_seconds()'
Returns: bool true if bar on chart is last bar of higher TF, dalse if bar on chart is not last bar of higher TF
necessaryData(atrTF)
returns necessaryData UDT for historical data access
Parameters:
atrTF (float) : user-selected timeframe ATR value.
Returns: logZ. log return Z score, used for calculating order blocks.
method gradBoxes(gradientBoxes, idColor, timeStart, bottom, top, rightCoordinate)
creates neon like effect for box drawings
Namespace types: array
Parameters:
gradientBoxes (array) : an array.new() to store the gradient boxes
idColor (color)
timeStart (int) : left point of box
bottom (float) : bottom of box price point
top (float) : top of box price point
rightCoordinate (int) : right point of box
Returns: void
checkIfTraded(tradeName)
checks if recent trade is of specific name
Parameters:
tradeName (string)
Returns: bool true if recent trade id matches target name, false otherwise
checkIfClosed(tradeName)
checks if recent closed trade is of specific name
Parameters:
tradeName (string)
Returns: bool true if recent closed trade id matches target name, false otherwise
IQZZ(atrMult, finalTF)
custom ZZ to quickly determine market direction.
Parameters:
atrMult (float) : an atr multiplier used to determine the required price move for a ZZ direction change
finalTF (string) : the timeframe used for the atr calcuation
Returns: dir market direction. Up => 1, down => -1
method drawBos(id, startPoint, getKeyPointTime, getKeyPointPrice, col, showBOS, isUp)
calculates and draws Break Of Structure
Namespace types: array
Parameters:
id (array)
startPoint (chart.point)
getKeyPointTime (int) : the actual time of startPoint, simplystartPoint.time
getKeyPointPrice (float) : the actual time of startPoint, simplystartPoint.price
col (color) : color of the BoS line / label
showBOS (bool) : whether to show label/line. This function still calculates internally for other ICT related concepts even if not drawn.
isUp (bool) : whether BoS happened during price increase or price decrease.
Returns: void
method drawMSS(id, startPoint, getKeyPointTime, getKeyPointPrice, col, showMSS, isUp, upRejections, dnRejections, highArr, lowArr, timeArr, closeArr, openArr, atrTFarr, upRejectionsPrices, dnRejectionsPrices)
calculates and draws Market Structure Shift. This data is also used to calculate Rejection Blocks.
Namespace types: array
Parameters:
id (array)
startPoint (chart.point)
getKeyPointTime (int) : the actual time of startPoint, simplystartPoint.time
getKeyPointPrice (float) : the actual time of startPoint, simplystartPoint.price
col (color) : color of the MSS line / label
showMSS (bool) : whether to show label/line. This function still calculates internally for other ICT related concepts even if not drawn.
isUp (bool) : whether MSS happened during price increase or price decrease.
upRejections (array)
dnRejections (array)
highArr (array) : array containing historical highs, should be taken from the UDT "necessaryData" defined above
lowArr (array) : array containing historical lows, should be taken from the UDT "necessaryData" defined above
timeArr (array) : array containing historical times, should be taken from the UDT "necessaryData" defined above
closeArr (array) : array containing historical closes, should be taken from the UDT "necessaryData" defined above
openArr (array) : array containing historical opens, should be taken from the UDT "necessaryData" defined above
atrTFarr (array) : array containing historical atr values (of user-selected TF), should be taken from the UDT "necessaryData" defined above
upRejectionsPrices (array) : array containing up rejections prices. Is sorted and used to determine selective looping for invalidations.
dnRejectionsPrices (array) : array containing down rejections prices. Is sorted and used to determine selective looping for invalidations.
Returns: void
method getTime(id, compare, timeArr)
gets time of inputted price (compare) in an array of data
this is useful when the user-selected timeframe for ICT concepts is greater than the chart's timeframe
Namespace types: array
Parameters:
id (array) : the array of data to search through, to find which index has the same value as "compare"
compare (float) : the target data point to find in the array
timeArr (array) : array of historical times
Returns: the time that the data point in the array was recorded
method OB(id, highArr, signArr, lowArr, timeArr, sign)
store bullish orderblock data
Namespace types: array
Parameters:
id (array)
highArr (array) : array of historical highs
signArr (array) : array of historical price direction "math.sign(close - open)"
lowArr (array) : array of historical lows
timeArr (array) : array of historical times
sign (int) : orderblock direction, -1 => bullish, 1 => bearish
Returns: void
OTEstrat(OTEstart, future, closeArr, highArr, lowArr, timeArr, longOTEPT, longOTESL, longOTElevel, shortOTEPT, shortOTESL, shortOTElevel, structureDirection, oteLongs, atrTF, oteShorts)
executes the OTE strategy
Parameters:
OTEstart (chart.point)
future (int) : future time point for drawings
closeArr (array) : array of historical closes
highArr (array) : array of historical highs
lowArr (array) : array of historical lows
timeArr (array) : array of historical times
longOTEPT (string) : user-selected long OTE profit target, please create an input.string() for this using the example below
longOTESL (int) : user-selected long OTE stop loss, please create an input.string() for this using the example below
longOTElevel (float) : long entry price of selected retracement ratio for OTE
shortOTEPT (string) : user-selected short OTE profit target, please create an input.string() for this using the example below
shortOTESL (int) : user-selected short OTE stop loss, please create an input.string() for this using the example below
shortOTElevel (float) : short entry price of selected retracement ratio for OTE
structureDirection (string) : current market structure direction, this should be "Up" or "Down". This is used to cancel pending orders if market structure changes
oteLongs (bool) : input.bool() for whether OTE longs can be executed
atrTF (float) : atr of the user-seleceted TF
oteShorts (bool) : input.bool() for whether OTE shorts can be executed
@exampleInputs
oteLongs = input.bool(defval = false, title = "OTE Longs", group = "Optimal Trade Entry")
longOTElevel = input.float(defval = 0.79, title = "Long Entry Retracement Level", options = , group = "Optimal Trade Entry")
longOTEPT = input.string(defval = "-0.5", title = "Long TP", options = , group = "Optimal Trade Entry")
longOTESL = input.int(defval = 0, title = "How Many Ticks Below Swing Low For Stop Loss", group = "Optimal Trade Entry")
oteShorts = input.bool(defval = false, title = "OTE Shorts", group = "Optimal Trade Entry")
shortOTElevel = input.float(defval = 0.79, title = "Short Entry Retracement Level", options = , group = "Optimal Trade Entry")
shortOTEPT = input.string(defval = "-0.5", title = "Short TP", options = , group = "Optimal Trade Entry")
shortOTESL = input.int(defval = 0, title = "How Many Ticks Above Swing Low For Stop Loss", group = "Optimal Trade Entry")
Returns: void (0)
displacement(logZ, atrTFreg, highArr, timeArr, lowArr, upDispShow, dnDispShow, masterCoords, labelLevels, dispUpcol, rightCoordinate, dispDncol, noBorders)
calculates and draws dispacements
Parameters:
logZ (float) : log return of current price, used to determine a "significant price move" for a displacement
atrTFreg (float) : atr of user-seleceted timeframe
highArr (array) : array of historical highs
timeArr (array) : array of historical times
lowArr (array) : array of historical lows
upDispShow (int) : amount of historical upside displacements to show
dnDispShow (int) : amount of historical downside displacements to show
masterCoords (map) : a map to push the most recent displacement prices into, useful for having key levels in one data structure
labelLevels (string) : used to determine label placement for the displacement, can be inside box, outside box, or none, example below
dispUpcol (color) : upside displacement color
rightCoordinate (int) : future time for displacement drawing, best is "last_bar_time"
dispDncol (color) : downside displacement color
noBorders (bool) : input.bool() to remove box borders, example below
@exampleInputs
labelLevels = input.string(defval = "Inside" , title = "Box Label Placement", options = )
noBorders = input.bool(defval = false, title = "No Borders On Levels")
Returns: void
method getStrongLow(id, startIndex, timeArr, lowArr, strongLowPoints)
unshift strong low data to array id
Namespace types: array
Parameters:
id (array)
startIndex (int) : the starting index for the timeArr array of the UDT "necessaryData".
this point should start from at least 1 pivot prior to find the low before an upside BoS
timeArr (array) : array of historical times
lowArr (array) : array of historical lows
strongLowPoints (array) : array of strong low prices. Used to retrieve highest strong low price and see if need for
removal of invalidated strong lows
Returns: void
method getStrongHigh(id, startIndex, timeArr, highArr, strongHighPoints)
unshift strong high data to array id
Namespace types: array
Parameters:
id (array)
startIndex (int) : the starting index for the timeArr array of the UDT "necessaryData".
this point should start from at least 1 pivot prior to find the high before a downside BoS
timeArr (array) : array of historical times
highArr (array) : array of historical highs
strongHighPoints (array)
Returns: void
equalLevels(highArr, lowArr, timeArr, rightCoordinate, equalHighsCol, equalLowsCol, liteMode)
used to calculate recent equal highs or equal lows
Parameters:
highArr (array) : array of historical highs
lowArr (array) : array of historical lows
timeArr (array) : array of historical times
rightCoordinate (int) : a future time (right for boxes, x2 for lines)
equalHighsCol (color) : user-selected color for equal highs drawings
equalLowsCol (color) : user-selected color for equal lows drawings
liteMode (bool) : optional for a lite mode version of an ICT strategy. For more control over drawings leave as "True", "False" will apply neon effects
Returns: void
quickTime(timeString)
used to quickly determine if a user-inputted time range is currently active in NYT time
Parameters:
timeString (string) : a time range
Returns: true if session is active, false if session is inactive
macros(showMacros, noBorders)
used to calculate and draw session macros
Parameters:
showMacros (bool) : an input.bool() or simple bool to determine whether to activate the function
noBorders (bool) : an input.bool() to determine whether the box anchored to the session should have borders
Returns: void
po3(tf, left, right, show)
use to calculate HTF po3 candle
@tip only call this function on "barstate.islast"
Parameters:
tf (simple string)
left (int) : the left point of the candle, calculated as bar_index + left,
right (int) : :the right point of the candle, calculated as bar_index + right,
show (bool) : input.bool() whether to show the po3 candle or not
Returns: void
silverBullet(silverBulletStratLong, silverBulletStratShort, future, userTF, H, L, H2, L2, noBorders, silverBulletLongTP, historicalPoints, historicalData, silverBulletLongSL, silverBulletShortTP, silverBulletShortSL)
used to execute the Silver Bullet Strategy
Parameters:
silverBulletStratLong (simple bool)
silverBulletStratShort (simple bool)
future (int) : a future time, used for drawings, example "last_bar_time"
userTF (simple int)
H (float) : the high price of the user-selected TF
L (float) : the low price of the user-selected TF
H2 (float) : the high price of the user-selected TF
L2 (float) : the low price of the user-selected TF
noBorders (bool) : an input.bool() used to remove the borders from box drawings
silverBulletLongTP (series silverBulletLevels)
historicalPoints (array)
historicalData (necessaryData)
silverBulletLongSL (series silverBulletLevels)
silverBulletShortTP (series silverBulletLevels)
silverBulletShortSL (series silverBulletLevels)
Returns: void
method invalidFVGcheck(FVGarr, upFVGpricesSorted, dnFVGpricesSorted)
check if existing FVGs are still valid
Namespace types: array
Parameters:
FVGarr (array)
upFVGpricesSorted (array) : an array of bullish FVG prices, used to selective search through FVG array to remove invalidated levels
dnFVGpricesSorted (array) : an array of bearish FVG prices, used to selective search through FVG array to remove invalidated levels
Returns: void (0)
method drawFVG(counter, FVGshow, FVGname, FVGcol, data, masterCoords, labelLevels, borderTransp, liteMode, rightCoordinate)
draws FVGs on last bar
Namespace types: map
Parameters:
counter (map) : a counter, as map, keeping count of the number of FVGs drawn, makes sure that there aren't more FVGs drawn
than int FVGshow
FVGshow (int) : the number of FVGs to show. There should be a bullish FVG show and bearish FVG show. This function "drawFVG" is used separately
for bearish FVG and bullish FVG.
FVGname (string) : the name of the FVG, "FVG Up" or "FVG Down"
FVGcol (color) : desired FVG color
data (FVG)
masterCoords (map) : a map containing the names and price points of key levels. Used to define price ranges.
labelLevels (string) : an input.string with options "Inside", "Outside", "Remove". Determines whether FVG labels should be inside box, outside,
or na.
borderTransp (int)
liteMode (bool)
rightCoordinate (int) : the right coordinate of any drawings. Must be a time point.
Returns: void
invalidBlockCheck(bullishOBbox, bearishOBbox, userTF)
check if existing order blocks are still valid
Parameters:
bullishOBbox (array) : an array declared using the UDT orderBlock that contains bullish order block related data
bearishOBbox (array) : an array declared using the UDT orderBlock that contains bearish order block related data
userTF (simple int)
Returns: void (0)
method lastBarRejections(id, rejectionColor, idShow, rejectionString, labelLevels, borderTransp, liteMode, rightCoordinate, masterCoords)
draws rejectionBlocks on last bar
Namespace types: array
Parameters:
id (array) : the array, an array of rejection block data declared using the UDT rejection block
rejectionColor (color) : the desired color of the rejection box
idShow (int)
rejectionString (string) : the desired name of the rejection blocks
labelLevels (string) : an input.string() to determine if labels for the block should be inside the box, outside, or none.
borderTransp (int)
liteMode (bool) : an input.bool(). True = neon effect, false = no neon.
rightCoordinate (int) : atime for the right coordinate of the box
masterCoords (map) : a map that stores the price of key levels and assigns them a name, used to determine price ranges
Returns: void
method OBdraw(id, OBshow, BBshow, OBcol, BBcol, bullishString, bearishString, isBullish, labelLevels, borderTransp, liteMode, rightCoordinate, masterCoords)
draws orderblocks and breaker blocks for data stored in UDT array()
Namespace types: array
Parameters:
id (array) : the array, an array of order block data declared using the UDT orderblock
OBshow (int) : the number of order blocks to show
BBshow (int) : the number of breaker blocks to show
OBcol (color) : color of order blocks
BBcol (color) : color of breaker blocks
bullishString (string) : the title of bullish blocks, which is a regular bullish orderblock or a bearish orderblock that's converted to breakerblock
bearishString (string) : the title of bearish blocks, which is a regular bearish orderblock or a bullish orderblock that's converted to breakerblock
isBullish (bool) : whether the array contains bullish orderblocks or bearish orderblocks. If bullish orderblocks,
the array will naturally contain bearish BB, and if bearish OB, the array will naturally contain bullish BB
labelLevels (string) : an input.string() to determine if labels for the block should be inside the box, outside, or none.
borderTransp (int)
liteMode (bool) : an input.bool(). True = neon effect, false = no neon.
rightCoordinate (int) : atime for the right coordinate of the box
masterCoords (map) : a map that stores the price of key levels and assigns them a name, used to determine price ranges
Returns: void
FVG
UDT for FVG calcualtions
Fields:
H (series float) : high price of user-selected timeframe
L (series float) : low price of user-selected timeframe
direction (series string) : FVG direction => "Up" or "Down"
T (series int) : => time of bar on user-selected timeframe where FVG was created
fvgLabel (series label) : optional label for FVG
fvgLineTop (series line) : optional line for top of FVG
fvgLineBot (series line) : optional line for bottom of FVG
fvgBox (series box) : optional box for FVG
labelLine
quickly pair a line and label together as UDT
Fields:
lin (series line) : Line you wish to pair with label
lab (series label) : Label you wish to pair with line
orderBlock
UDT for order block calculations
Fields:
orderBlockData (array) : array containing order block x and y points
orderBlockBox (series box) : optional order block box
vioCount (series int) : = 0 violation count of the order block. 0 = Order Block, 1 = Breaker Block
traded (series bool)
status (series string) : = "OB" status == "OB" => Level is order block. status == "BB" => Level is breaker block.
orderBlockLab (series label) : options label for the order block / breaker block.
strongPoints
UDT for strong highs and strong lows
Fields:
price (series float) : price of the strong high or strong low
timeAtprice (series int) : time of the strong high or strong low
strongPointLabel (series label) : optional label for strong point
strongPointLine (series line) : optional line for strong point
overlayLine (series line) : optional lines for strong point to enhance visibility
overlayLine2 (series line) : optional lines for strong point to enhance visibility
displacement
UDT for dispacements
Fields:
highPrice (series float) : high price of displacement
lowPrice (series float) : low price of displacement
timeAtPrice (series int) : time of bar where displacement occurred
displacementBox (series box) : optional box to draw displacement
displacementLab (series label) : optional label for displacement
po3data
UDT for po3 calculations
Fields:
dHigh (series float) : higher timeframe high price
dLow (series float) : higher timeframe low price
dOpen (series float) : higher timeframe open price
dClose (series float) : higher timeframe close price
po3box (series box) : box to draw po3 candle body
po3line (array) : line array to draw po3 wicks
po3Labels (array) : label array to label price points of po3 candle
macros
UDT for session macros
Fields:
sessions (array) : Array of sessions, you can populate this array using the "quickTime" function located above "export macros".
prices (matrix) : Matrix of session data -> open, high, low, close, time
sessionTimes (array) : Array of session names. Pairs with array sessions.
sessionLines (matrix) : Optional array for sesion drawings.
OTEtimes
UDT for data storage and drawings associated with OTE strategy
Fields:
upTimes (array) : time of highest point before trade is taken
dnTimes (array) : time of lowest point before trade is taken
tpLineLong (series line) : line to mark tp level long
tpLabelLong (series label) : label to mark tp level long
slLineLong (series line) : line to mark sl level long
slLabelLong (series label) : label to mark sl level long
tpLineShort (series line) : line to mark tp level short
tpLabelShort (series label) : label to mark tp level short
slLineShort (series line) : line to mark sl level short
slLabelShort (series label) : label to mark sl level short
sweeps
UDT for data storage and drawings associated with liquidity sweeps
Fields:
upSweeps (matrix) : matrix containing liquidity sweep price points and time points for up sweeps
dnSweeps (matrix) : matrix containing liquidity sweep price points and time points for down sweeps
upSweepDrawings (array) : optional up sweep box array. Pair the size of this array with the rows or columns,
dnSweepDrawings (array) : optional up sweep box array. Pair the size of this array with the rows or columns,
raidExitDrawings
UDT for drawings associated with the Liquidity Raid Strategy
Fields:
tpLine (series line) : tp line for the liquidity raid entry
tpLabel (series label) : tp label for the liquidity raid entry
slLine (series line) : sl line for the liquidity raid entry
slLabel (series label) : sl label for the liquidity raid entry
m2022
UDT for data storage and drawings associated with the Model 2022 Strategy
Fields:
mTime (series int) : time of the FVG where entry limit order is placed
mIndex (series int) : array index of FVG where entry limit order is placed. This requires an array of FVG data, which is defined above.
mEntryDistance (series float) : the distance of the FVG to the 50% range. M2022 looks for the fvg closest to 50% mark of range.
mEntry (series float) : the entry price for the most eligible fvg
fvgHigh (series float) : the high point of the eligible fvg
fvgLow (series float) : the low point of the eligible fvg
longFVGentryBox (series box) : long FVG box, used to draw the eligible FVG
shortFVGentryBox (series box) : short FVG box, used to draw the eligible FVG
line50P (series line) : line used to mark 50% of the range
line100P (series line) : line used to mark 100% (top) of the range
line0P (series line) : line used to mark 0% (bottom) of the range
label50P (series label) : label used to mark 50% of the range
label100P (series label) : label used to mark 100% (top) of the range
label0P (series label) : label used to mark 0% (bottom) of the range
sweepData (array)
silverBullet
UDT for data storage and drawings associated with the Silver Bullet Strategy
Fields:
session (series bool)
sessionStr (series string) : name of the session for silver bullet
sessionBias (series string)
sessionHigh (series float) : = high high of session // use math.max(silverBullet.sessionHigh, high)
sessionLow (series float) : = low low of session // use math.min(silverBullet.sessionLow, low)
sessionFVG (series float) : if applicable, the FVG created during the session
sessionFVGdraw (series box) : if applicable, draw the FVG created during the session
traded (series bool)
tp (series float) : tp of trade entered at the session FVG
sl (series float) : sl of trade entered at the session FVG
sessionDraw (series box) : optional draw session with box
sessionDrawLabel (series label) : optional label session with label
silverBulletDrawings
UDT for trade exit drawings associated with the Silver Bullet Strategy
Fields:
tpLine (series line) : tp line drawing for strategy
tpLabel (series label) : tp label drawing for strategy
slLine (series line) : sl line drawing for strategy
slLabel (series label) : sl label drawing for strategy
unicornModel
UDT for data storage and drawings associated with the Unicorn Model Strategy
Fields:
hPoint (chart.point)
hPoint2 (chart.point)
hPoint3 (chart.point)
breakerBlock (series box) : used to draw the breaker block required for the Unicorn Model
FVG (series box) : used to draw the FVG required for the Unicorn model
topBlock (series float) : price of top of breaker block, can be used to detail trade entry
botBlock (series float) : price of bottom of breaker block, can be used to detail trade entry
startBlock (series int) : start time of the breaker block, used to set the "left = " param for the box
includes (array) : used to store the time of the breaker block, or FVG, or the chart point sequence that setup the Unicorn Model.
entry (series float) : // eligible entry price, for longs"math.max(topBlock, FVG.get_top())",
tpLine (series line) : optional line to mark PT
tpLabel (series label) : optional label to mark PT
slLine (series line) : optional line to mark SL
slLabel (series label) : optional label to mark SL
rejectionBlocks
UDT for data storage and drawings associated with rejection blocks
Fields:
rejectionPoint (chart.point)
bodyPrice (series float) : candle body price closest to the rejection point, for "Up" rejections => math.max(open, close),
rejectionBox (series box) : optional box drawing of the rejection block
rejectionLabel (series label) : optional label for the rejection block
equalLevelsDraw
UDT for data storage and drawings associated with equal highs / equal lows
Fields:
connector (series line) : single line placed at the first high or low, y = avgerage of distinguished equal highs/lows
connectorLab (series label) : optional label to be placed at the highs or lows
levels (array) : array containing the equal highs or lows prices
times (array) : array containing the equal highs or lows individual times
startTime (series int) : the time of the first high or low that forms a sequence of equal highs or lows
radiate (array) : options label to "radiate" the label in connector lab. Can be used for anything
necessaryData
UDT for data storage of historical price points.
Fields:
highArr (array) : array containing historical high points
lowArr (array) : array containing historical low points
timeArr (array) : array containing historical time points
logArr (array) : array containing historical log returns
signArr (array) : array containing historical price directions
closeArr (array) : array containing historical close points
binaryTimeArr (array) : array containing historical time points, uses "push" instead of "unshift" to allow for binary search
binaryCloseArr (array) : array containing historical close points, uses "push" instead of "unshift" to allow the correct
binaryOpenArr (array) : array containing historical optn points, uses "push" instead of "unshift" to allow the correct
atrTFarr (array) : array containing historical user-selected TF atr points
openArr (array) : array containing historical open points
ICT Master Suite [Trading IQ]Hello Traders!
We’re excited to introduce the ICT Master Suite by TradingIQ, a new tool designed to bring together several ICT concepts and strategies in one place.
The Purpose Behind the ICT Master Suite
There are a few challenges traders often face when using ICT-related indicators:
Many available indicators focus on one or two ICT methods, which can limit traders who apply a broader range of ICT related techniques on their charts.
There aren't many indicators for ICT strategy models, and we couldn't find ICT indicators that allow for testing the strategy models and setting alerts.
Many ICT related concepts exist in the public domain as indicators, not strategies! This makes it difficult to verify that the ICT concept has some utility in the market you're trading and if it's worth trading - it's difficult to know if it's working!
Some users might not have enough chart space to apply numerous ICT related indicators, which can be restrictive for those wanting to use multiple ICT techniques simultaneously.
The ICT Master Suite is designed to offer a comprehensive option for traders who want to apply a variety of ICT methods. By combining several ICT techniques and strategy models into one indicator, it helps users maximize their chart space while accessing multiple tools in a single slot.
Additionally, the ICT Master Suite was developed as a strategy . This means users can backtest various ICT strategy models - including deep backtesting. A primary goal of this indicator is to let traders decide for themselves what markets to trade ICT concepts in and give them the capability to figure out if the strategy models are worth trading!
What Makes the ICT Master Suite Different
There are many ICT-related indicators available on TradingView, each offering valuable insights. What the ICT Master Suite aims to do is bring together a wider selection of these techniques into one tool. This includes both key ICT methods and strategy models, allowing traders to test and activate strategies all within one indicator.
Features
The ICT Master Suite offers:
Multiple ICT strategy models, including the 2022 Strategy Model and Unicorn Model, which can be built, tested, and used for live trading.
Calculation and display of key price areas like Breaker Blocks, Rejection Blocks, Order Blocks, Fair Value Gaps, Equal Levels, and more.
The ability to set alerts based on these ICT strategies and key price areas.
A comprehensive, yet practical, all-inclusive ICT indicator for traders.
Customizable Timeframe - Calculate ICT concepts on off-chart timeframes
Unicorn Strategy Model
2022 Strategy Model
Liquidity Raid Strategy Model
OTE (Optimal Trade Entry) Strategy Model
Silver Bullet Strategy Model
Order blocks
Breaker blocks
Rejection blocks
FVG
Strong highs and lows
Displacements
Liquidity sweeps
Power of 3
ICT Macros
HTF previous bar high and low
Break of Structure indications
Market Structure Shift indications
Equal highs and lows
Swings highs and swing lows
Fibonacci TPs and SLs
Swing level TPs and SLs
Previous day high and low TPs and SLs
And much more! An ongoing project!
How To Use
Many traders will already be familiar with the ICT related concepts listed above, and will find using the ICT Master Suite quite intuitive!
Despite this, let's go over the features of the tool in-depth and how to use the tool!
The image above shows the ICT Master Suite with almost all techniques activated.
ICT 2022 Strategy Model
The ICT Master suite provides the ability to test, set alerts for, and live trade the ICT 2022 Strategy Model.
The image above shows an example of a long position being entered following a complete setup for the 2022 ICT model.
A liquidity sweep occurs prior to an upside breakout. During the upside breakout the model looks for the FVG that is nearest 50% of the setup range. A limit order is placed at this FVG for entry.
The target entry percentage for the range is customizable in the settings. For instance, you can select to enter at an FVG nearest 33% of the range, 20%, 66%, etc.
The profit target for the model generally uses the highest high of the range (100%) for longs and the lowest low of the range (100%) for shorts. Stop losses are generally set at 0% of the range.
The image above shows the short model in action!
Whether you decide to follow the 2022 model diligently or not, you can still set alerts when the entry condition is met.
ICT Unicorn Model
The image above shows an example of a long position being entered following a complete setup for the ICT Unicorn model.
A lower swing low followed by a higher swing high precedes the overlap of an FVG and breaker block formed during the sequence.
During the upside breakout the model looks for an FVG and breaker block that formed during the sequence and overlap each other. A limit order is placed at the nearest overlap point to current price.
The profit target for this example trade is set at the swing high and the stop loss at the swing low. However, both the profit target and stop loss for this model are configurable in the settings.
For Longs, the selectable profit targets are:
Swing High
Fib -0.5
Fib -1
Fib -2
For Longs, the selectable stop losses are:
Swing Low
Bottom of FVG or breaker block
The image above shows the short version of the Unicorn Model in action!
For Shorts, the selectable profit targets are:
Swing Low
Fib -0.5
Fib -1
Fib -2
For Shorts, the selectable stop losses are:
Swing High
Top of FVG or breaker block
The image above shows the profit target and stop loss options in the settings for the Unicorn Model.
Optimal Trade Entry (OTE) Model
The image above shows an example of a long position being entered following a complete setup for the OTE model.
Price retraces either 0.62, 0.705, or 0.79 of an upside move and a trade is entered.
The profit target for this example trade is set at the -0.5 fib level. This is also adjustable in the settings.
For Longs, the selectable profit targets are:
Swing High
Fib -0.5
Fib -1
Fib -2
The image above shows the short version of the OTE Model in action!
For Shorts, the selectable profit targets are:
Swing Low
Fib -0.5
Fib -1
Fib -2
Liquidity Raid Model
The image above shows an example of a long position being entered following a complete setup for the Liquidity Raid Modell.
The user must define the session in the settings (for this example it is 13:30-16:00 NY time).
During the session, the indicator will calculate the session high and session low. Following a “raid” of either the session high or session low (after the session has completed) the script will look for an entry at a recently formed breaker block.
If the session high is raided the script will look for short entries at a bearish breaker block. If the session low is raided the script will look for long entries at a bullish breaker block.
For Longs, the profit target options are:
Swing high
User inputted Lib level
For Longs, the stop loss options are:
Swing low
User inputted Lib level
Breaker block bottom
The image above shows the short version of the Liquidity Raid Model in action!
For Shorts, the profit target options are:
Swing Low
User inputted Lib level
For Shorts, the stop loss options are:
Swing High
User inputted Lib level
Breaker block top
Silver Bullet Model
The image above shows an example of a long position being entered following a complete setup for the Silver Bullet Modell.
During the session, the indicator will determine the higher timeframe bias. If the higher timeframe bias is bullish the strategy will look to enter long at an FVG that forms during the session. If the higher timeframe bias is bearish the indicator will look to enter short at an FVG that forms during the session.
For Longs, the profit target options are:
Nearest Swing High Above Entry
Previous Day High
For Longs, the stop loss options are:
Nearest Swing Low
Previous Day Low
The image above shows the short version of the Silver Bullet Model in action!
For Shorts, the profit target options are:
Nearest Swing Low Below Entry
Previous Day Low
For Shorts, the stop loss options are:
Nearest Swing High
Previous Day High
Order blocks
The image above shows indicator identifying and labeling order blocks.
The color of the order blocks, and how many should be shown, are configurable in the settings!
Breaker Blocks
The image above shows indicator identifying and labeling order blocks.
The color of the breaker blocks, and how many should be shown, are configurable in the settings!
Rejection Blocks
The image above shows indicator identifying and labeling rejection blocks.
The color of the rejection blocks, and how many should be shown, are configurable in the settings!
Fair Value Gaps
The image above shows indicator identifying and labeling fair value gaps.
The color of the fair value gaps, and how many should be shown, are configurable in the settings!
Additionally, you can select to only show fair values gaps that form after a liquidity sweep. Doing so reduces "noisy" FVGs and focuses on identifying FVGs that form after a significant trading event.
The image above shows the feature enabled. A fair value gap that occurred after a liquidity sweep is shown.
Market Structure
The image above shows the ICT Master Suite calculating market structure shots and break of structures!
The color of MSS and BoS, and whether they should be displayed, are configurable in the settings.
Displacements
The images above show indicator identifying and labeling displacements.
The color of the displacements, and how many should be shown, are configurable in the settings!
Equal Price Points
The image above shows the indicator identifying and labeling equal highs and equal lows.
The color of the equal levels, and how many should be shown, are configurable in the settings!
Previous Custom TF High/Low
The image above shows the ICT Master Suite calculating the high and low price for a user-defined timeframe. In this case the previous day’s high and low are calculated.
To illustrate the customizable timeframe function, the image above shows the indicator calculating the previous 4 hour high and low.
Liquidity Sweeps
The image above shows the indicator identifying a liquidity sweep prior to an upside breakout.
The image above shows the indicator identifying a liquidity sweep prior to a downside breakout.
The color and aggressiveness of liquidity sweep identification are adjustable in the settings!
Power Of Three
The image above shows the indicator calculating Po3 for two user-defined higher timeframes!
Macros
The image above shows the ICT Master Suite identifying the ICT macros!
ICT Macros are only displayable on the 5 minute timeframe or less.
Strategy Performance Table
In addition to a full-fledged TradingView backtest for any of the ICT strategy models the indicator offers, a quick-and-easy strategy table exists for the indicator!
The image above shows the strategy performance table in action.
Keep in mind that, because the ICT Master Suite is a strategy script, you can perform fully automatic backtests, deep backtests, easily add commission and portfolio balance and look at pertinent metrics for the ICT strategies you are testing!
Lite Mode
Traders who want the cleanest chart possible can toggle on “Lite Mode”!
In Lite Mode, any neon or “glow” like effects are removed and key levels are marked as strict border boxes. You can also select to remove box borders if that’s what you prefer!
Settings Used For Backtest
For the displayed backtest, a starting balance of $1000 USD was used. A commission of 0.02%, slippage of 2 ticks, a verify price for limit orders of 2 ticks, and 5% of capital investment per order.
A commission of 0.02% was used due to the backtested asset being a perpetual future contract for a crypto currency. The highest commission (lowest-tier VIP) for maker orders on many exchanges is 0.02%. All entered positions take place as maker orders and so do profit target exits. Stop orders exist as stop-market orders.
A slippage of 2 ticks was used to simulate more realistic stop-market orders. A verify limit order settings of 2 ticks was also used. Even though BTCUSDT.P on Binance is liquid, we just want the backtest to be on the safe side. Additionally, the backtest traded 100+ trades over the period. The higher the sample size the better; however, this example test can serve as a starting point for traders interested in ICT concepts.
Community Assistance And Feedback
Given the complexity and idiosyncratic applications of ICT concepts amongst its proponents, the ICT Master Suite’s built-in strategies and level identification methods might not align with everyone's interpretation.
That said, the best we can do is precisely define ICT strategy rules and concepts to a repeatable process, test, and apply them! Whether or not an ICT strategy is trading precisely how you would trade it, seeing the model in action, taking trades, and with performance statistics is immensely helpful in assessing predictive utility.
If you think we missed something, you notice a bug, have an idea for strategy model improvement, please let us know! The ICT Master Suite is an ongoing project that will, ideally, be shaped by the community.
A big thank you to the @PineCoders for their Time Library!
Thank you!
Volume Breaker Blocks [UAlgo]The "Volume Breaker Blocks " indicator is designed to identify breaker blocks in the market based on volume and price action. It is a concept that emerges when an order block fails, leading to a change in market structure. It signifies a pivotal point where the market shifts direction, offering traders opportunities to enter trades based on anticipated trend continuation.
🔶 Key Features
Identifying Breaker Blocks: The indicator identifies breaker blocks by detecting pivot points in price action and corresponding volume spikes.
Breaker Block Sensitivity: Traders can adjust breaker block detection sensitivity, length to be used to find pivot points.
Mitigation Method (Close or Wick): Traders can choose between "Close" and "Wick" as the mitigation method. This choice determines whether the indicator considers closing prices or wicks in identifying breaker blocks. Selecting "Close" implies that breaker blocks will be considered broken when the closing price violates the block, while selecting "Wick" implies that the wick of the candle must violate the block for it to be considered broken.
Show Last X Breaker Blocks: Users can specify how many of the most recent breaker blocks to display on the chart.
Visualization: Volume breaker blocks are visually represented on the chart with customizable colors and text labels, allowing for easy interpretation of market conditions. Each breaker block is accompanied by informational text, including whether it's bullish or bearish and the corresponding volume, aiding traders in understanding the significance of each block.
🔶 Disclaimer
Educational Purpose: The "Volume Breaker Blocks " indicator is provided for educational and informational purposes only. It does not constitute financial advice or a recommendation to engage in trading activities.
Risk of Loss: Trading in financial markets involves inherent risks, including the risk of loss of capital. Users should carefully consider their financial situation, risk tolerance, and investment objectives before engaging in trading activities.
Accuracy Not Guaranteed: While the indicator aims to identify potential reversal points in the market, its accuracy and effectiveness may vary. Users should conduct thorough testing and analysis before relying solely on the indicator for trading decisions.
Past Performance: Past performance is not indicative of future results. Historical data and backtesting results may not accurately reflect actual market conditions or future performance.
Pure Price Action ICT Tools [LuxAlgo]The Pure Price Action ICT Tools indicator is designed for pure price action analysis, automatically identifying real-time market structures, liquidity levels, order & breaker blocks, and liquidity voids.
Its unique feature lies in its exclusive reliance on price patterns, without being constrained by any user-defined inputs, ensuring a robust and objective analysis of market dynamics.
🔶 MARKET STRUCTURES
A Market Structure Shift, also known as a Change of Character (CHoCH), is a pivotal event in price action analysis indicating a potential change in market sentiment or direction. An MSS occurs when the price reverses from an established trend, signaling that the prevailing trend may be losing momentum and a reversal might be underway. This shift is often identified by key technical patterns, such as a higher low in a downtrend or a lower high in an uptrend, which indicate a weakening of the current trend's strength.
A Break of Structure typically indicates the continuation of the current market trend. This event occurs when the price decisively moves beyond a previous swing high or low, confirming the strength of the prevailing trend. In an uptrend, a BOS is marked by the price breaking above a previous high, while in a downtrend, it is identified by the price breaking below a previous low.
While a Market Structure Shift (MSS) can indicate a potential trend reversal and a Break of Structure (BOS) often confirms trend continuation, they do not assure a complete reversal or continuation. MSS and BOS levels can also function as liquidity zones or areas of price consolidation rather than definitively signaling a change in market direction. Traders should approach these signals cautiously and validate them with additional factors before making trading decisions. For further details on other components of the tool, please refer to the following sections.
🔶 ORDER & BREAKER BLOCKS
Order and Breaker Blocks are key concepts in price action analysis that help traders identify significant levels in the market structure.
Order Blocks are specific price zones where significant buying or selling activity has occurred. These zones often represent the actions of large institutional traders or market makers, who execute substantial orders that impact the market.
Breaker Blocks are specific price zones where a strong reversal occurs, causing a break in the prevailing market structure. These blocks indicate areas where the price encountered significant resistance or support, leading to a reversal.
In summary, Order and Breaker Blocks are essential tools in price action analysis, providing insights into significant market levels influenced by institutional trading activities. These blocks help traders make informed decisions about potential support and resistance levels, trend reversals, and breakout confirmations.
🔶 BUYSIDE & SELLSIDE LIQUIDITY
Both buy-side and sell-side liquidity zones are critical for identifying potential turning points in the market. These zones are where significant buying or selling interest is concentrated, influencing future price movements.
In summary, buy-side and sell-side liquidity provide crucial insights into market demand and supply dynamics, helping traders make informed decisions based on the availability of orders at different price levels.
🔶 LIQUIDITY VOIDS
Liquidity voids are gaps or areas on a price chart where there is a lack of trading activity. These voids represent zones with minimal to no buy or sell orders, often resulting in sharp price movements when the market enters these areas.
In summary, liquidity voids are crucial areas on a price chart characterized by a lack of trading activity. These voids can lead to rapid price movements and increased volatility, making them essential considerations for traders in their analysis and decision-making processes.
🔶 SWING POINTS
Reversal price points are commonly referred to as swing points. Traders often analyze historical swing points to discern market trends and pinpoint potential trade entry and exit points.
Do note that in this script these are subject to backpainting, that is they are not located where they are detected.
The detection of swing points and the unique feature of this script rely exclusively on price action, eliminating the need for numerical user-defined settings. The process begins with detecting short-term swing points:
Short-Term Swing High (STH): Identified as a price peak surrounded by lower highs on both sides.
Short-Term Swing Low (STL): Recognized as a price trough surrounded by higher lows on both sides.
Intermediate-term and long-term swing points are detected using the same approach but with a slight modification. Instead of directly analyzing price candles, previously detected short-term swing points are utilized. For intermediate-term swing points, short-term swing points are analyzed, while for long-term swing points, intermediate-term ones are used.
This method ensures a robust and objective analysis of market dynamics, offering traders reliable insights into market structures. Detected swing points serve as the foundation for identifying market structures, buy-side/sell-side liquidity levels, and order and breaker blocks presented with this tool.
In summary, swing points are essential elements in technical analysis, helping traders identify trends, support, and resistance levels, and optimal entry and exit points. Understanding swing points allows traders to make informed decisions based on the natural price movements in the market.
🔶 SETTINGS
🔹 Market Structures
Market Structures: Toggles the visibility of the market structures, both shifts and breaks.
Detection: An option that allows users to detect market structures based on the significance of swing levels, including short-term, intermediate-term, and long-term.
Market Structure Labels: Controls the visibility of labels that highlight the type of market structure.
Line Style: Customizes the style of the lines representing the market structure.
🔹 Order & Breaker Blocks
Order & Breaker Blocks: Toggles the visibility of the order & breaker blocks.
Detection: An option that allows users to detect order & breaker blocks based on the significance of swing levels, including short-term, intermediate-term, and long-term.
Last Bullish Blocks: Number of the most recent bullish order/breaker blocks to display on the chart.
Last Bearish Blocks: Number of the most recent bearish order/breaker blocks to display on the chart.
Use Candle Body: Allows users to use candle bodies as order block areas instead of the full candle range.
🔹 Buyside & Sellside Liquidity
Buyside & Sellside Liquidity: Toggles the visibility of the buyside & sellside liquidity levels.
Detection: An option that allows users to detect buy-side & sell-side liquidity based on the significance of swing levels, including short-term, intermediate-term, and long-term.
Margin: Sets margin/sensitivity for a liquidity level detection.
Visible Levels: Controls the amount of the liquidity levels/zones to be visualized.
🔹 Liquidity Voids
Liquidity Voids: Enable display of both bullish and bearish liquidity voids.
Threshold Multiplier: Defines the multiplier for the threshold, which is hard-coded to the 200-period ATR range.
Mode: Controls the lookback length for detection and visualization. Present considers the last X bars specified in the option, while Historical includes all available data.
Label: Enable display of a label indicating liquidity voids.
🔹 Swing Highs/Lows
Swing Highs/Lows: Toggles the visibility of the swing levels.
Detection: An option that allows users to detect swing levels based on the significance of swing levels, including short-term, intermediate-term, and long-term.
Label Size: Control the size of swing level labels.
🔶 RELATED SCRIPTS
Pure-Price-Action-Structures.
Market-Structures-(Intrabar).
Buyside-Sellside-Liquidity.
Order-Breaker-Blocks.
OrderBlock_TradingHubAn order block refers to a specific area on chart that represents a significant level of support or resistance where institutional traders have placed large orders. By identifying order blocks, traders can gain insights into the intentions and actions of the smart money participants.
Typically, the order block is represented by the last bullish (bearish) candle before a downtrend (uptrend) initiate. Whereas this indicator is quite different from the existing order block detection tools. It categorizes order blocks into different types (Main order blocks, Unmitigated shadow order blocks and Single candle order blocks), checking the following criteria based on TradingHUB-3 technical method:
1) Take out liquidity
2) Cause imbalance
3) Not to be inside-bar
How it works:
This indicator identifies 3 types of order blocks through the following procedure:
1) Main Order Blocks (Extreme, Decisional, and SMT(smart money trap)):
• Check that the candle is not inside bar.
• Check that the candle has taken out the liquidity beyond the previous candle's high/low.
• Check that the candle has created an imbalance (FVG) after; if not: the order block will be transferred to the first following candle that created imbalance. We check up to three following candles to find any imbalance.
2) Unmitigated Shadow Order Blocks:
• Check that the candle has taken out the liquidity beyond the previous candle's high/low.
• Check that the price has not touched the shadow so far.
3) Single Candle Order Blocks (SCOB):
• Check that the candle is not inside bar.
• Check that the candle has taken out the liquidity beyond the previous candle's high/low.
• Check confirmation:
- If the candle is closed higher/lower than the previous candle high/low, it is confirmed as a SCOB; otherwise:
- Move forward up to a specified number (determined by the user) to find a confirmation candle. A confirmation is a candle that closed higher/lower than the SCOB and its following candles high/low. The SCOB's following candles, and the confirmation candle should not take out the SCOB's liquidity again.
How to use it:
• This indicator can be used in all time frames.
• If the liquidity is taken out in an uptrend (downtrend) market structure, when the price meets the order blocks, we can go to lower timeframes and look for a trigger to enter the long (short) trade.
• It is essential for smart money traders to diagnose the market structure accurately. The "Structure_TradingHub " indicator is recommended for its ability to analyze the market structure effectively.
Indicator options:
• Show/Hide mitigated order Blocks: By this option, the user can choose whether to delete the touched order blocks or trimmed them.
• Show/Hide the unmitigated shadows. They are displayed by dashed lines.
• Show/Hide single candle order blocks: They are displayed by two lines placed above and below the candle.
• Changing the color and style of uptrend and downtrend order blocks.
Order + Breaker Blocks - Custom TimeframesThis indicator is a Hidden Liquidity Script, being a much more refined and precise version of "Order Blocks" also known as "Supply and Demand" zones.
This script is more refined and precise as this script is the only script that displays the exact body part of blocks on multiple timeframes, showing potentially powerful price reversal zones for taking a long or short.
This is a PRICE ACTION indicator, demonstrating price action that can result in potential good support/resistance levels for taking a long or short trade.
This indicator only displays the body part of order blocks, instead of including wicks that all other indicators do. That makes this script a much more refined version of all other scripts out there.
Not only that, this script can collate multiple timeframes into one indicator, again something other scripts cannot do.
This script is also unique compared to other Hidden Liquidity style scripts in that you have full control over each Order Block so you can see each individual block on a chart, whilst other charts combine them into a zone instead. This refined version gives you precise potential entries and much further refinement as well as more thorough backtesting capabilities.
This script also can highlight order blocks that pass THROUGH a Fair Value Gap. These are known as 'Breaker Blocks'. These powerful blocks can be places of interest as support or resistance for a long or short trade. Note: This script shows the body part of a block only and not the wick.
Breaker Blocks, where significant displacement has occurred in price past a block can be more powerful. This script does not highlight Fair Value Gaps themselves, only order blocks (supply and demand) and breaker blocks through displacement in price (through an FVG). FVGs on their own can be weaker without order blocks behind them hence they are not highlighted.
The BODY of the order block, and the 0.5 of the order block are key regions for considering a trade, treating that level as either resistance or support.
Important: PLEASE NOTE: This indicator will only show timeframes that are higher than or the same as the current chart timeframe.
For Example, only blocks 3 Days or higher will show on a 3D chart. It will not show 12h blocks on a 3D chart. You would need to go to a 12 hour chart with the 12h blocks showing to see all Blocks that are 12h or higher drawn.
This Script differs from others in that you can DEFINE your OWN TIMEFRAMES.
It caters for 4 timeframes. If it is slow loading, deselect the 3 others and show only one.
LTF can take a looong time to load and may not be possible at all on subscriptions with only 20s compute time on their plan.
However if you have a timeframe in mind you have wanted to check out that is not standard, you can do it with this Indicator.
For seconds, use the digit and add an “S” to it. Eg 45 seconds use “45S”
For Mintues and Hours, you must do them in minute format with no letter added. Eg 145 minutes is “145”. 30 minutes is “30”. 6 hours is “360” minutes. Trading View allows up to 24 hours in minute format.
For Days, eg 3 Days use “3D”
For Weeks, eg 5 Weeks, use ‘5W”
For Months, eg 6 Months, use “6M”.
If you don’t use the correct format as specified above it will not work or display anything.
SETTINGS:
There is options to change the colours of the boxes and to differentiate between Order Blocks and stronger Breaker Blocks if desired.
If this is NOT desired, make all color options the same color,.
Shown below is blue Order Blocks (Supply and Demand
Shown below there is Pink Breaker Blocks.
There is options to weaken the colour of blocks that have been tapped by a wick and thus partially used up, also called partially "mitigated".These blocks can be considered weaker support/resistance.
Once a block has had a wick or body close over it entirely, the block can be considered fully "mitigated" and will disappear from the indicator once that candle has closed. This block level can now be considered too weak. You can also choose to not show these partially mitigated blocks at all.
The charts above shows pale Violet blocks as partially mitigated or "tapped" blocks.
The blocks in HOT BRIGHT Violet are untapped and potentially stronger levels for a Long or Short trade. See below the 7h.
Additional SETTINGS:
Further options include, if selected: Counting the number of fair value gaps an order block may pass through. More FVGs an order block (now a breaker block) passes through can strengthen the support of that block level, making a reversal more likely.
There is an option of showing old mitigated order blocks and changing the color of these on the chart. This can aid in backtesting of levels.
Further Settings include:
- an option to remove very thin blocks that may not be strong points.
- an option to denote with a character such as a * blocks that have their EQ 0.5 region wicked - these can be considered weaker.
- an option to denote with an additional * or another character blocks that are barely tapped by a small percent so you know they are still considered quite strong.
- an option to show how many candles form the order block.
Additional Options include:
- an option to show blocks only within a specific price range or percent range of the current price.
- an option to only look X number of bars back.
There is Options regarding labelling, and Border widths on boxes.
It is ESSENTIAL to do your own research and backtesting!
It is recommended to combine these levels with other concepts for added confluence.
Other indicators are NOT included in this script. This is purely a refined order block script for the BODY of a block only.
You can combine Order Blocks and stronger versions known as Breaker Blocks in this script with other indicators or concepts to form a Full Trading Strategy.
Other potential concepts to combine, not shown in this script can include Smart Money Concepts, Market Structure, Fibonnaccis, SMAs, EMAs or any other concept to give added confluence to the support / resistance levels identified in this script that may indicate that the level is stronger.
This indicator is not a trading strategy on its own. It is best used in combination with other concepts to improve the success.
Backtesting this indicator is highly recommended and incorporated into a full trading system of your own design. This only identifies possible key regions based on Price Action Strategies.
This indicator simply makes the identification of these hot levels easier and simpler to find, especially across multiple timeframes.
A strong bright zone on the indicator can be a stronger level than a weak partial block that is in light colours.
Again -Please do your own research and backtesting.
These indicators make finding these levels much much simpler and easier when combined with a full trading strategy.
Any feedback is welcome.
Order + Breaker Blocks MTF - Vees Hidden LiquidityThis indicator is a Hidden Liquidity Script, being a much more refined and precise version of "Order Blocks" also known as "Supply and Demand" zones.
This script is more refined and precise as this script is the only script that displays the exact body part of blocks on multiple timeframes, showing potentially powerful price reversal zones for taking a long or short.
This is a PRICE ACTION indicator, demonstrating price action that can result in potential good support/resistance levels for taking a long or short trade.
This indicator only displays the body part of order blocks, instead of including wicks that all other indicators do. That makes this script a much more refined version of all other scripts out there.
Not only that, this script can collate multiple timeframes into one indicator, again something other scripts cannot do.
This script is also unique compared to other Hidden Liquidity style scripts in that you have full control over each Order Block so you can see each individual block on a chart, whilst other charts combine them into a zone instead. This refined version gives you precise potential entries and much further refinement as well as more thorough backtesting capabilities.
This script also can highlight order blocks that pass THROUGH a Fair Value Gap. These are known as 'Breaker Blocks'. These powerful blocks can be places of interest as support or resistance for a long or short trade. Note: This script shows the body part of a block only and not the wick.
Breaker Blocks, where significant displacement has occurred in price past a block can be more powerful. This script does not highlight Fair Value Gaps themselves, only order blocks (supply and demand) and breaker blocks through displacement in price (through an FVG). FVGs on their own can be weaker without order blocks behind them hence they are not highlighted.
The BODY of the order block, and the 0.5 of the order block are key regions for considering a trade, treating that level as either resistance or support.
Important: PLEASE NOTE: This indicator will only show timeframes that are higher than or the same as the current chart timeframe.
For Example, only blocks 3 Days or higher will show on a 3D chart. It will not show 12h blocks on a 3D chart. You would need to go to a 12 hour chart with the 12h blocks showing to see all Blocks that are 12h or higher drawn.
SETTINGS:
There is options to change the colours of the boxes and to differentiate between Order Blocks and stronger Breaker Blocks if desired.
If this is NOT desired, make all color options the same color,.
Shown below is blue Order Blocks (Supply and Demand
Shown below there is Pink Breaker Blocks.
There is options to weaken the colour of blocks that have been tapped by a wick and thus partially used up, also called partially "mitigated".These blocks can be considered weaker support/resistance.
Once a block has had a wick or body close over it entirely, the block can be considered fully "mitigated" and will disappear from the indicator once that candle has closed. This block level can now be considered too weak. You can also choose to not show these partially mitigated blocks at all.
The charts above shows pale Violet blocks as partially mitigated or "tapped" blocks.
The blocks in HOT BRIGHT Violet are untapped and potentially stronger levels for a Long or Short trade. See below the 7h.
Additional SETTINGS:
Further options include, if selected: Counting the number of fair value gaps an order block may pass through. More FVGs an order block (now a breaker block) passes through can strengthen the support of that block level, making a reversal more likely.
There is an option of showing old mitigated order blocks and changing the color of these on the chart. This can aid in backtesting of levels.
Further Settings include:
- an option to remove very thin blocks that may not be strong points.
- an option to denote with a character such as a * blocks that have their EQ 0.5 region wicked - these can be considered weaker.
- an option to denote with an additional * or another character blocks that are barely tapped by a small percent so you know they are still considered quite strong.
- an option to show how many candles form the order block.
Additional Options include:
- an option to show blocks only within a specific price range or percent range of the current price.
- an option to only look X number of bars back.
There is Options regarding labelling, and Border widths on boxes.
It is ESSENTIAL to do your own research and backtesting!
It is recommended to combine these levels with other concepts for added confluence.
Other indicators are NOT included in this script. This is purely a refined order block script for the BODY of a block only.
You can combine Order Blocks and stronger versions known as Breaker Blocks in this script with other indicators or concepts to form a Full Trading Strategy.
Other potential concepts to combine, not shown in this script can include Smart Money Concepts, Market Structure, Fibonnaccis, SMAs, EMAs or any other concept to give added confluence to the support / resistance levels identified in this script that may indicate that the level is stronger.
This indicator is not a trading strategy on its own. It is best used in combination with other concepts to improve the success.
Backtesting this indicator is highly recommended and incorporated into a full trading system of your own design. This only identifies possible key regions based on Price Action Strategies.
This indicator simply makes the identification of these hot levels easier and simpler to find, especially across multiple timeframes.
A strong bright zone on the indicator can be a stronger level than a weak partial block that is in light colours.
Again -Please do your own research and backtesting.
These indicators make finding these levels much much simpler and easier when combined with a full trading strategy.
Any feedback is welcome.
Order + Breaker Blocks HTFThis indicator is a Hidden Liquidity Script, being a much more refined and precise version of "Order Blocks" also known as "Supply and Demand" zones.
This script is more refined and precise as this script is the only script that displays the exact body part of blocks on multiple timeframes, showing potentially powerful price reversal zones for taking a long or short.
This is a PRICE ACTION indicator, demonstrating price action that can result in potential good support/resistance levels for taking a long or short trade.
This indicator only displays the body part of order blocks, instead of including wicks that all other indicators do. That makes this script a much more refined version of all other scripts out there.
Not only that, this script can collate multiple timeframes into one indicator, again something other scripts cannot do.
This script is also unique compared to other Hidden Liquidity style scripts in that you have full control over each Order Block so you can see each individual block on a chart, whilst other charts combine them into a zone instead. This refined version gives you precise potential entries and much further refinement as well as more thorough backtesting capabilities.
This script also can highlight order blocks that pass THROUGH a Fair Value Gap. These are known as 'Breaker Blocks'. These powerful blocks can be places of interest as support or resistance for a long or short trade. Note: This script shows the body part of a block only and not the wick.
Breaker Blocks, where significant displacement has occurred in price past a block can be more powerful. This script does not highlight Fair Value Gaps themselves, only order blocks (supply and demand) and breaker blocks through displacement in price (through an FVG). FVGs on their own can be weaker without order blocks behind them hence they are not highlighted.
The BODY of the order block, and the 0.5 of the order block are key regions for considering a trade, treating that level as either resistance or support.
Important: PLEASE NOTE: This indicator will only show timeframes that are higher than or the same as the current chart timeframe.
For Example, only blocks 3 Days or higher will show on a 3D chart. It will not show 12h blocks on a 3D chart. You would need to go to a 12 hour chart with the 12h blocks showing to see all Blocks that are 12h or higher drawn.
SETTINGS:
There is options to change the colours of the boxes and to differentiate between Order Blocks and stronger Breaker Blocks if desired.
If this is NOT desired, make all color options the same color,.
Shown below is blue Order Blocks (Supply and Demand)
Shown below there is Pink Breaker Blocks.
There is options to weaken the colour of blocks that have been tapped by a wick and thus partially used up, also called partially "mitigated".These blocks can be considered weaker support/resistance.
Once a block has had a wick or body close over it entirely, the block can be considered fully "mitigated" and will disappear from the indicator once that candle has closed. This block level can now be considered too weak. You can also choose to not show these partially mitigated blocks at all.
The chart above shows pale Violet blocks as partially mitigated or "tapped" blocks.
The blocks in HOT BRIGHT Violet are untapped and potentially stronger levels for a Long or Short trade.
See below and example of a HOT PINK stronger level with a 1,2,3,4,5 Days of blocks in the one area.
See below an example of a weaker pink level. Still valid, but potentially riskier. There is a weaker 5D Block in pale pink and no other days in that same zone.
Additional SETTINGS:
Further options include, if selected: Counting the number of fair value gaps an order block may pass through. More FVGs an order block (now a breaker block) passes through can strengthen the support of that block level, making a reversal more likely.
There is an option of showing old mitigated order blocks and changing the color of these on the chart. This can aid in backtesting of levels.
Further Settings include:
- an option to remove very thin blocks that may not be strong points.
- an option to denote with a character such as a * blocks that have their EQ 0.5 region wicked - these can be considered weaker.
- an option to denote with an additional * or another character blocks that are barely tapped by a small percent so you know they are still considered quite strong.
- an option to show how many candles form the order block.
Additional Options include:
- an option to show blocks only within a specific price range or percent range of the current price.
- an option to only look X number of bars back.
There is Options regarding labelling, and Border widths on boxes.
It is ESSENTIAL to do your own research and backtesting!
It is recommended to combine these levels with other concepts for added confluence.
Other indicators are NOT included in this script. This is purely a refined order block script for the BODY of a block only.
You can combine Order Blocks and stronger versions known as Breaker Blocks in this script with other indicators or concepts to form a Full Trading Strategy.
Other potential concepts to combine, not shown in this script can include Smart Money Concepts, Market Structure, Fibonnaccis, SMAs, EMAs or any other concept to give added confluence to the support / resistance levels identified in this script that may indicate that the level is stronger.
This indicator is not a trading strategy on its own. It is best used in combination with other concepts to improve the success.
Backtesting this indicator is highly recommended and incorporated into a full trading system of your own design. This only identifies possible key regions based on Price Action Strategies.
This indicator simply makes the identification of these hot levels easier and simpler to find, especially across multiple timeframes.
A strong bright zone on the indicator can be a stronger level than a weak partial block that is in light colours.
Again -Please do your own research and backtesting.
These indicators make finding these levels much much simpler and easier when combined with a full trading strategy.
Any feedback is welcome.
Breaker Blocks Screener | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Breaker Blocks Screener! This screener can provide information about the latest breaker blocks in up to 5 tickers. You can also customize the algorithm that finds the breaker blocks and the styling of the screener.
Features of the new Breaker Blocks Screener :
Find Latest Breaker Blocks Accross 5 Tickers
Latest Status, Restests & Volume
Customizable Algoritm / Styling
📌 HOW DOES IT WORK ?
Breaker blocks form when an order block fails, or "breaks". It is often associated with market going in the opposite direction of the broken order block, and they can be spotted by following order blocks and finding the point they get broken, ie. price goes below a bullish order block.
The volume of a breaker block is simply the total volume of the bar that the original order block is broken. Often the higher the breaking bar's volume, the stronger the breaker block is.
This screener then finds breaker blocks accross 5 different tickers, and shows the latest information about them.
Status ->
Far -> The current price is far away from the breaker block.
Approaching ⬆️/⬇️ -> The current price is approaching the breaker block, and the direction it's approaching from.
Inside -> The price is currently inside the breaker block.
Retests -> Retest means the price to invalidate the breaker block, but failed to do so. Here you can see how many times the price retested the breaker block.
For the volume, check the top of the "How Does It Work" section.
🚩UNIQUENESS
This screener can detect latest breaker blocks and give information about them for up to 5 tickers. This saves the user time by showing them all in a dashboard at the same time. The screener shows the number of the retests of the breaker block as an unique trait. Another unique ability of the screener is that it shows the latest valid breaker block's volume in the dashboard.
⚙️SETTINGS
1. Tickers
You can set up to 5 tickers for the screener to scan breaker blocks here. You can also enable / disable them and set their individual timeframes.
2. General Configuration
Zone Invalidations -> Select between Wick & Close price for Order & Breaker Block Invalidation.
Swing Length -> Swing length is used when finding order block formations. Smaller values will result in finding smaller order blocks.
[AlbaTherium] OptiStruct™ Premium for Smart Money Concepts An Insight into Structure Mapping and Order Block Identification with Smart Money Concepts
Introduction:
Structure Mapping & Demands and Supplies Premium serves as a fundamental pillar in the realm of Smart Money Concepts . This indicator adeptly charts the market structure based on a refined version of SMC while identifying Order Blocks. All the concepts embedded in this method are meticulously defined, offering users the ability to chart the market structure with precision and heightened confidence. With this indicator, there is no need for excessive questioning of the accuracy of your markings; it diligently strives to perform this task effectively. There are no hidden 'magic' properties underlying this indicator, ensuring that our users can independently verify each and every feature. It is this commitment to transparency that sets us apart and makes us unique in the market.
In this discussion, we delve into the intricacies of Break of Structure, Change of Character , and SMART MONEY TRAP . We also introduce the concepts of Extreme Order Blocks, Decisional Order Blocks , and Smart Money Trap Order Blocks .
Chapter 1: Understanding Structure Mapping:
Let's begin with some definitions:
- Inside bars are candles that lie within the range of a preceding candle.
- Pullbacks occur in an uptrend when the low of a preceding candle's range (excluding inside bars ) is breached, and the price continues to rise.
- Inducements (IDM) are price levels defined as the low of the latest pullback before the most recent high. They often act as liquidity points that the market revisits before continuing its move.
Break of Structure (BoS):
In an uptrend, after surpassing an IDM , the most recent high becomes a Confirmed structure high, or a Major High . If the price then closes above this Major High, a Bullish Break of Structure (Bullish BoS) is confirmed. Similarly, the lowest point between these movements becomes a Confirmed structure low or Major Low in a downtrend.
Change of Character (ChoCh):
In an uptrend, if the price falls below a Major Low, it indicates a shift in market bias from Bullish to Bearish, or a Bearish Change of Character .
Example of a bullish ChoCh:
Chapter 2: The Significance of Order Blocks:
Order Blocks (OB) play a pivotal role in Smart Money Concepts during entry points. Understanding what they represent and how to identify them is essential. For a Bullish/Bearish Order Block to be confirmed, specific conditions, including price imbalance and breaching the previous candle's high or low, must be met. We will delve into the finer details of identifying and trading Order Blocks, with an emphasis on the fact that price often reacts from Decisional Order Blocks, Extreme Order Blocks , and Smart Money Trap Order Blocks .
An OB is the initial candle range of a pullback that creates a Fair value gap.
These are zones where proactive traders enter the market, resulting in significant price changes indicated by Fair value gaps. It is believed that when the price revisits these zones in the future, it tends to bounce back. This property makes Order Blocks excellent potential entry points.
Order Blocks are categorized as follows:
- Extreme OB : The first and lowest OB between the Major Low and Major High.
- Decisional OB : The most recent OB lower than the current IDM.
- Smart Money Traps : All OBs between Extreme and Decisional OB.
- Demand above IDM / Supply below IDM
Chapter 3: Understanding SMART MONEY TRAP (SMT):
SMART MONEY TRAP is a concept that brings clarity to the distinction between Structure and Order Blocks within Smart Money Concepts and is a unique feature of this indicator. While many Smart Money Traders base their trades on Structure and Order Blocks, it's crucial to recognize that Order Blocks serve as an additional confirmation for buy or sell decisions. Blindly trading based on Order Blocks is not advisable. Instead, traders should exercise patience and await other confirmations like inducement or Liquidity sweep before executing trades on Order Blocks. We will illustrate how this concept works in practice.
In the example above, the market made a high wick up, taking out the buy-side liquidity, then made a bearish ChoCh. We place our sell order on the order block above IDM. This presents a promising trading opportunity, with a stop loss placed above the OB and a take profit set at the low of previous structure.
Conclusion:
Structure Mapping & Demands and Supplies Premium as the epitome of Smart Money Concepts, presenting traders with a tool meticulously crafted for an exceptional user experience . This indicator integrates structural mapping and Order Blocks, providing not only a wealth of knowledge but a platform tailor-made for personalization to suit your unique style and preferences. By mastering the nuances of Impulsive Moves and Corrections, and expertly identifying and trading Order Blocks while considering the SMART MONEY TRAP, traders gain a distinct advantage in the ever-evolving financial markets.
This document serves as an enriching guide to Structure Mapping & Demands and Supplies Premium, accentuating its pivotal role within the Smart Money Concepts framework. We invite users to immerse themselves in an experience that transcends the ordinary, delving into the intricacies that define successful trading. As you navigate the complexities of the market, these detailed insights become your compass, providing a rich and customizable user experience that unlocks the full potential of Smart Money Concepts. Embrace these tools judiciously, and empower your daily analysis with a wealth of information that truly holds its weight in gold.
Live Market - Performance MonitorLive Market — Performance Monitor
Study material (no code) — step-by-step training guide for learners
________________________________________
1) What this tool is — short overview
This indicator is a live market performance monitor designed for learning. It scans price, volume and volatility, detects order blocks and trendline events, applies filters (volume & ATR), generates trade signals (BUY/SELL), creates simple TP/SL trade management, and renders a compact dashboard summarizing market state, risk and performance metrics.
Use it to learn how multi-factor signals are constructed, how Greeks-style sensitivity is replaced by volatility/ATR reasoning, and how a live dashboard helps monitor trade quality.
________________________________________
2) Quick start — how a learner uses it (step-by-step)
1. Add the indicator to a chart (any ticker / timeframe).
2. Open inputs and review the main groups: Order Block, Trendline, Signal Filters, Display.
3. Start with defaults (OB periods ≈ 7, ATR multiplier 0.5, volume threshold 1.2) and observe the dashboard on the last bar.
4. Walk the chart back in time (use the last-bar update behavior) and watch how signals, order blocks, trendlines, and the performance counters change.
5. Run the hands-on labs below to build intuition.
________________________________________
3) Main configurable inputs (what you can tweak)
• Order Block Relevant Periods (default ~7): number of consecutive candles used to define an order block.
• Min. Percent Move for Valid OB (threshold): minimum percent move required for a valid order block.
• Number of OB Channels: how many past order block lines to keep visible.
• Trendline Period (tl_period): pivot lookback for detecting highs/lows used to draw trendlines.
• Use Wicks for Trendlines: whether pivot uses wicks or body.
• Extension Bars: how far trendlines are projected forward.
• Use Volume Filter + Volume Threshold Multiplier (e.g., 1.2): requires volume to be greater than multiplier × average volume.
• Use ATR Filter + ATR Multiplier: require bar range > ATR × multiplier to filter noise.
• Show Targets / Table settings / Colors for visualization.
________________________________________
4) Core building blocks — what the script computes (plain language)
Price & trend:
• Spot / LTP: current close price.
• EMA 9 / 21 / 50: fast, medium, slow moving averages to define short/medium trend.
o trend_bullish: EMA9 > EMA21 > EMA50
o trend_bearish: EMA9 < EMA21 < EMA50
o trend_neutral: otherwise
Volatility & noise:
• ATR (14): average true range used for dynamic target and filter sizing.
• dynamic_zone = ATR × atr_multiplier: minimum bar range required for meaningful move.
• Annualized volatility: stdev of price changes × sqrt(252) × 100 — used to classify volatility (HIGH/MEDIUM/LOW).
Momentum & oscillators:
• RSI 14: overbought/oversold indicator (thresholds 70/30).
• MACD: EMA(12)-EMA(26) and a 9-period signal line; histogram used for momentum direction and strength.
• Momentum (ta.mom 10): raw momentum over 10 bars.
Mean reversion / band context:
• Bollinger Bands (20, 2σ): upper, mid, lower.
o price_position measures where price sits inside the band range as 0–100.
Volume metrics:
• avg_volume = SMA(volume, 20) and volume_spike = volume > avg_volume × volume_threshold
o volume_ratio = volume / avg_volume
Support & Resistance:
• support_level = lowest low over 20 bars
• resistance_level = highest high over 20 bars
• current_position = percent of price between support & resistance (0–100)
________________________________________
5) Order Block detection — concept & logic
What it tries to find: a bar (the base) followed by N candles in the opposite direction (a classical order block setup), with a minimum % move to qualify. The script records the high/low of the base candle, averages them, and plots those levels as OB channels.
How learners should think about it (conceptual):
1. An order block is a signature area where institutions (theory) left liquidity — often seen as a large bar followed by a sequence of directional candles.
2. This indicator uses a configurable number of subsequent candles to confirm that the pattern exists.
3. When found, it stores and displays the base candle’s high/low area so students can see how price later reacts to those zones.
Implementation note for learners: the tool keeps a limited history of OB lines (ob_channels). When new OBs exceed the count, the oldest lines are removed — good practice to avoid clutter.
________________________________________
6) Trendline detection — idea & interpretation
• The script finds pivot highs and lows using a symmetric lookback (tl_period and half that as right/left).
• It then computes a trendline slope from successive pivots and projects the line forward (extension_bars).
• Break detection: Resistance break = close crosses above the projected resistance line; Support break = close crosses below projected support.
Learning tip: trendlines here are computed from pivot points and time. Watch how changing tl_period (bigger = smoother, fewer pivots) alters the trendlines and break signals.
________________________________________
7) Signal generation & filters — step-by-step
1. Primary triggers:
o Bullish trigger: order block bullish OR resistance trendline break.
o Bearish trigger: bearish order block OR support trendline break.
2. Filters applied (both must pass unless disabled):
o Volume filter: volume must be > avg_volume × volume_threshold.
o ATR filter: bar range (high-low) must exceed ATR × atr_multiplier.
o Not in an existing trade: new trades only start if trade_active is false.
3. Trend confirmation:
o The primary trigger is only confirmed if trend is bullish/neutral for buys or bearish/neutral for sells (EMA alignment).
4. Result:
o When confirmed, a long or short trade is activated with TP/SL calculated from ATR multiples.
________________________________________
8) Trade management — what the tool does after a signal
• Entry management: the script marks a trade as trade_active and sets long_trade or short_trade flags.
• TP & SL rules:
o Long: TP = high + 2×ATR ; SL = low − 1×ATR
o Short: TP = low − 2×ATR ; SL = high + 1×ATR
• Monitoring & exit:
o A trade closes when price reaches TP or SL.
o When TP/SL hit, the indicator updates win_count and total_pnl using a very simple calculation (difference between TP/SL and previous close).
o Visual lines/labels are drawn for TP and updated as the trade runs.
Important learner notes:
• The script does not store a true entry price (it uses close in its P&L math), so PnL is an approximation — treat this as a learning proxy, not a position accounting system.
• There’s no sizing, slippage, or fee accounted — students must manually factor these when translating to real trades.
• This indicator is not a backtesting strategy; strategy.* functions would be needed for rigorous backtest results.
________________________________________
9) Signal strength & helper utilities
• Signal strength is a composite score (0–100) made up of four signals worth 25 points each:
1. RSI extreme (overbought/oversold) → 25
2. Volume spike → 25
3. MACD histogram magnitude increasing → 25
4. Trend existence (bull or bear) → 25
• Progress bars (text glyphs) are used to visually show RSI and signal strength on the table.
Learning point: composite scoring is a way to combine orthogonal signals — study how changing weights changes outcomes.
________________________________________
10) Dashboard — how to read each section (walkthrough)
The dashboard is split into sections; here's how to interpret them:
1. Market Overview
o LTP / Change%: immediate price & daily % change.
2. RSI & MACD
o RSI value plus progress bar (overbought 70 / oversold 30).
o MACD histogram sign indicates bullish/bearish momentum.
3. Volume Analysis
o Volume ratio (current / average) and whether there’s a spike.
4. Order Block Status
o Buy OB / Sell OB: the average base price of detected order blocks or “No Signal.”
5. Signal Status
o 🔼 BUY or 🔽 SELL if confirmed, or ⚪ WAIT.
o No-trade vs Active indicator summarizing market readiness.
6. Trend Analysis
o Trend direction (from EMAs), market sentiment score (composite), volatility level and band/position metrics.
7. Performance
o Win Rate = wins / signals (percentage)
o Total PnL = cumulative PnL (approximate)
o Bull / Bear Volume = accumulated volumes attributable to signals
8. Support & Resistance
o 20-bar highest/lowest — use as nearby reference points.
9. Risk & R:R
o Risk Level from ATR/price as a percent.
o R:R Ratio computed from TP/SL if a trade is active.
10. Signal Strength & Active Trade Status
• Numeric strength + progress bar and whether a trade is currently active with TP/SL display.
________________________________________
11) Alerts — what will notify you
The indicator includes pre-built alert triggers for:
• Bullish confirmed signal
• Bearish confirmed signal
• TP hit (long/short)
• SL hit (long/short)
• No-trade zone
• High signal strength (score > 75%)
Training use: enable alerts during a replay session to be notified when the indicator would have signalled.
________________________________________
12) Labs — hands-on exercises for learners (step-by-step)
Lab A — Order Block recognition
1. Pick a 15–30 minute timeframe on a liquid ticker.
2. Use default OB periods (7). Mark each time the dashboard shows a Buy/Sell OB.
3. Manually inspect the chart at the base candle and the following sequence — draw the OB zone by hand and watch later price reactions to it.
4. Repeat with OB periods 5 and 10; note stability vs noise.
Lab B — Trendline break confirmation
1. Increase trendline period (e.g., 20), watch trendlines form from pivots.
2. When a resistance break is flagged, compare with MACD & volume: was momentum aligned?
3. Note false breaks vs confirmed moves — change extension_bars to see projection effects.
Lab C — Filter sensitivity
1. Toggle Use Volume Filter off, and record the number and quality of signals in a 2-day window.
2. Re-enable volume filter and change threshold from 1.2 → 1.6; note how many low-quality signals are filtered out.
Lab D — Trade management simulation
1. For each signalled trade, record the time, close entry approximation, TP, SL, and eventual hit/miss.
2. Compute actual PnL if you had entered at the open of the next bar to compare with the script’s PnL math.
3. Tabulate win rate and average R:R.
Lab E — Performance review & improvement
1. Build a spreadsheet of signals over 30–90 periods with columns: Date, Signal type, Entry price (real), TP, SL, Exit, PnL, Notes.
2. Analyze which filters or indicators contributed most to winners vs losers and adjust weights.
________________________________________
13) Common pitfalls, assumptions & implementation notes (things to watch)
• P&L simplification: total_pnl uses close as a proxy entry price. Real entry/exit prices and slippage are not recorded — so PnL is approximate.
• No position sizing or money management: the script doesn’t compute position size from equity or risk percent.
• Signal confirmation logic: composite "signal_strength" is a simple 4×25 point scheme — explore different weights or additional signals.
• Order block detection nuance: the script defines the base candle and checks the subsequent sequence. Be sure to verify whether the intended candle direction (base being bullish vs bearish) aligns with academic/your trading definition — read the code carefully and test.
• Trendline slope over time: slope is computed using timestamps; small differences may make lines sensitive on very short timeframes — using bar_index differences is usually more stable.
• Not a true backtester: to evaluate performance statistically you must transform the logic into a strategy script that places hypothetical orders and records exact entry/exit prices.
________________________________________
14) Suggested improvements for advanced learners
• Record true entry price & timestamp for accurate PnL.
• Add position sizing: risk % per trade using SL distance and account size.
• Convert to strategy. (Pine Strategy)* to run formal backtests with equity curves, drawdowns, and metrics (Sharpe, Sortino).
• Log trades to an external spreadsheet (via alerts + webhook) for offline analysis.
• Add statistics: average win/loss, expectancy, max drawdown.
• Add additional filters: news time blackout, market session filters, multi-timeframe confirmation.
• Improve OB detection: combine wick/body, volume spike at base bar, and liquidity sweep detection.
________________________________________
15) Glossary — quick definitions
• ATR (Average True Range): measure of typical range; used to size targets and stops.
• EMA (Exponential Moving Average): trend smoothing giving more weight to recent prices.
• RSI (Relative Strength Index): momentum oscillator; >70 overbought, <30 oversold.
• MACD: momentum oscillator using difference of two EMAs.
• Bollinger Bands: volatility bands around SMA.
• Order Block: a base candle area with subsequent confirmation candles; a zone of institutional interest (learning model).
• Pivot High/Low: local turning point defined by candles on both sides.
• Signal Strength: combined score from multiple indicators.
• Win Rate: proportion of signals that hit TP vs total signals.
• R:R (Risk:Reward): ratio of potential reward (TP distance) to risk (entry to SL).
________________________________________
16) Limitations & assumptions (be explicit)
• This is an indicator for learning — not a trading robot or broker connection.
• No slippage, fees, commissions or tie-in to real orders are considered.
• The logic is heuristic (rule-of-thumb), not a guarantee of performance.
• Results are sensitive to timeframe, market liquidity, and parameter choices.
________________________________________
17) Practical classroom / study plan (4 sessions)
• Session 1 — Foundations: Understand EMAs, ATR, RSI, MACD, Bollinger Bands. Run the indicator and watch how these numbers change on a single day.
• Session 2 — Zones & Filters: Study order blocks and trendlines. Test volume & ATR filters and note changes in false signals.
• Session 3 — Simulated trading: Manually track 20 signals, compute real PnL and compare to the dashboard.
• Session 4 — Improvement plan: Propose changes (e.g., better PnL accounting, alternative OB rule) and test their impact.
________________________________________
18) Quick reference checklist for each signal
1. Was an order block or trendline break detected? (primary trigger)
2. Did volume meet threshold? (filter)
3. Did ATR filter (bar size) show a real move? (filter)
4. Was trend aligned (EMA 9/21/50)? (confirmation)
5. Signal confirmed → mark entry approximation, TP, SL.
6. Monitor dashboard (Signal Strength, Volatility, No-trade zone, R:R).
7. After exit, log real entry/exit, compute actual PnL, update spreadsheet.
________________________________________
19) Educational caveat & final note
This tool is built for training and analysis: it helps you see how common technical building blocks combine into trade ideas, but it is not a trading recommendation. Use it to develop judgment, to test hypotheses, and to design robust systems with proper backtesting and risk control before risking capital.
________________________________________
20) Disclaimer (must include)
Training & Educational Only — This material and the indicator are provided for educational purposes only. Nothing here is investment advice or a solicitation to buy or sell financial instruments. Past simulated or historical performance does not predict future results. Always perform full backtesting and risk management, and consider seeking advice from a qualified financial professional before trading with real capital.
________________________________________
Pure Price Action Order & Breaker Blocks [LuxAlgo]The Pure Price Action Order & Breaker Blocks indicator is a pure price action adaptation of our previously published and highly popular Order-Blocks-Breaker-Blocks script.
Similar to its earlier version, this indicator detects order blocks that can automatically turn into breaker blocks on the chart once mitigated. However, the key difference/uniqueness is that the pure price action version relies solely on price patterns, eliminating the need for length definitions. In other words, it removes the limitation of user-defined inputs, ensuring a robust and objective analysis of market dynamics.
🔶 USAGE
An order block is a significant area on a price chart where there was a notable accumulation or distribution of orders, often identified by a strong price move followed by consolidation. Traders use order blocks to identify potential support or resistance levels.
A mitigated order block refers to an order block that has been invalidated due to subsequent market movements. It may no longer hold the same significance in the current market context. However, when the price mitigates an order block, a breaker block is confirmed. It is possible that the price might trade back to this breaker block, potentially offering a new trading opportunity.
Users can optionally enable the "Historical Polarity Changes" labels within the settings menu to see where breaker blocks might have previously provided effective trade setups.
This feature is most effective when using replay mode. Please note that these labels are subject to backpainting.
🔶 DETAILS
The swing points detection feature relies exclusively on price action, eliminating the need for numerical user-defined settings.
The first step involves detecting short-term swing points, where a short-term swing high (STH) is identified as a price peak surrounded by lower highs on both sides. Similarly, a short-term swing low is recognized as a price trough surrounded by higher lows on both sides.
Intermediate-term swing and long-term swing points are detected using the same approach but with a slight modification. Instead of directly analyzing price candles, we now utilize the previously detected short-term swing points. For intermediate-term swing points, we rely on short-term swing points, while for long-term swing points, we use the intermediate-term ones.
🔶 SETTINGS
Detection: Market structure used to detect swing points for creating order blocks.
Show Last Bullish OB: Number of the most recent bullish order/breaker blocks to display on the chart.
Show Last Bearish OB: Number of the most recent bearish order/breaker blocks to display on the chart.
Use Candle Body: Allows users to use candle bodies as order block areas instead of the full candle range.
🔹 Style
Show Historical Polarity Changes: Allows users to see labels indicating where a swing high/low previously occurred within a breaker block.
🔶 RELATED SCRIPTS
Pure-Price-Action-Structures.
Order-Blocks-Breaker-Blocks.
ICT Concepts [LuxAlgo]The ICT Concepts indicator regroups core concepts highlighted by trader and educator "The Inner Circle Trader" (ICT) into an all-in-one toolkit. Features include Market Structure (MSS & BOS), Order Blocks, Imbalances, Buyside/Sellside Liquidity, Displacements, ICT Killzones, and New Week/Day Opening Gaps.
🔶 SETTINGS
🔹 Mode
When Present is selected, only data of the latest 500 bars are used/visualized, except for NWOG/NDOG
🔹 Market Structure
Enable/disable Market Structure.
Length: will set the lookback period/sensitivity.
In Present Mode only the latest Market Structure trend will be shown, while in Historical Mode, previous trends will be shown as well:
You can toggle MSS/BOS separately and change the colors:
🔹 Displacement
Enable/disable Displacement.
🔹 Volume Imbalance
Enable/disable Volume Imbalance.
# Visible VI's: sets the amount of visible Volume Imbalances (max 100), color setting is placed at the side.
🔹 Order Blocks
Enable/disable Order Blocks.
Swing Lookback: Lookback period used for the detection of the swing points used to create order blocks.
Show Last Bullish OB: Number of the most recent bullish order/breaker blocks to display on the chart.
Show Last Bearish OB: Number of the most recent bearish order/breaker blocks to display on the chart.
Color settings.
Show Historical Polarity Changes: Allows users to see labels indicating where a swing high/low previously occurred within a breaker block.
Use Candle Body: Allows users to use candle bodies as order block areas instead of the full candle range.
Change in Order Blocks style:
🔹 Liquidity
Enable/disable Liquidity.
Margin: sets the sensitivity, 2 points are fairly equal when:
'point 1' < 'point 2' + (10 bar Average True Range / (10 / margin)) and
'point 1' > 'point 2' - (10 bar Average True Range / (10 / margin))
# Visible Liq. boxes: sets the amount of visible Liquidity boxes (max 50), this amount is for Sellside and Buyside boxes separately.
Colour settings.
Change in Liquidity style:
🔹 Fair Value Gaps
Enable/disable FVG's.
Balance Price Range: this is the overlap of latest bullish and bearish Fair Value Gaps.
By disabling Balance Price Range only FVGs will be shown.
Options: Choose whether you wish to see FVG or Implied Fair Value Gaps (this will impact Balance Price Range as well)
# Visible FVG's: sets the amount of visible FVG's (max 20, in the same direction).
Color settings.
Change in FVG style:
🔹 NWOG/NDOG
Enable/disable NWOG; color settings; amount of NWOG shown (max 50).
Enable/disable NDOG ; color settings; amount of NDOG shown (max 50).
🔹 Fibonacci
This tool connects the 2 most recent bullish/bearish (if applicable) features of your choice, provided they are enabled.
3 examples (FVG, BPR, OB):
Extend lines -> Enabled (example OB):
🔹 Killzones
Enable/disable all or the ones you need.
Time settings are coded in the corresponding time zones.
🔶 USAGE
By default, the indicator displays each feature relevant to the most recent price variations in order to avoid clutter on the chart & to provide a very similar experience to how a user would contruct ICT Concepts by hand.
Users can use the historical mode in the settings to see historical market structure/imbalances. The ICT Concepts indicator has various use cases, below we outline many examples of how a trader could find usage of the features together.
In the above image we can see price took out Sellside liquidity, filled two bearish FVGs, a market structure shift, which then led to a clean retest of a bullish FVG as a clean setup to target the order block above.
Price then fills the OB which creates a breaker level as seen in yellow.
Broken OBs can be useful for a trader using the ICT Concepts indicator as it marks a level where orders have now been filled, indicating a solidified level that has proved itself as an area of liquidity. In the image above we can see a trade setup using a broken bearish OB as a potential entry level.
We can see the New Week Opening Gap (NWOG) above was an optimal level to target considering price may tend to fill / react off of these levels according to ICT.
In the next image above, we have another example of various use cases where the ICT Concepts indicator hypothetically allow traders to find key levels & find optimal entry points using market structure.
In the image above we can see a bearish Market Structure Shift (MSS) is confirmed, indicating a potential trade setup for targeting the Balanced Price Range imbalance (BPR) below with a stop loss above the buyside liquidity.
Although what we are demonstrating here is a hindsight example, it shows the potential usage this toolkit gives you for creating trading plans based on ICT Concepts.
Same chart but playing out the history further we can see directly after price came down to the Sellside liquidity & swept below it...
Then by enabling IFVGs in the settings, we can see the IFVG retests alongside the Sellside & Buyside liquidity acting in confluence.
Which allows us to see a great bullish structure in the market with various key levels for potential entries.
Here we can see a potential bullish setup as price has taken out a previous Sellside liquidity zone and is now retesting a NWOG + Volume Imbalance.
Users also have the option to display Fibonacci retracements based on market structure, order blocks, and imbalance areas, which can help place limit/stop orders more effectively as well as finding optimal points of interest beyond what the primary ICT Concepts features can generate for a trader.
In the above image we can see the Fibonacci extension was selected to be based on the NWOG giving us some upside levels above the buyside liquidity.
🔶 DETAILS
Each feature within the ICT Concepts indicator is described in the sub sections below.
🔹 Market Structure
Market structure labels are constructed from price breaking a prior swing point. This allows a user to determine the current market trend based on the price action.
There are two types of Market Structure labels included:
Market Structure Shift (MSS)
Break Of Structure (BOS)
A MSS occurs when price breaks a swing low in an uptrend or a swing high in a downtrend, highlighting a potential reversal. This is often labeled as "CHoCH", but ICT specifies it as MSS.
On the other hand, BOS labels occur when price breaks a swing high in an uptrend or a swing low in a downtrend. The occurrence of these particular swing points is caused by retracements (inducements) that highlights liquidity hunting in lower timeframes.
🔹 Order Blocks
More significant market participants (institutions) with the ability of placing large orders in the market will generally place a sequence of individual trades spread out in time. This is referred as executing what is called a "meta-order".
Order blocks highlight the area where potential meta-orders are executed. Bullish order blocks are located near local bottoms in an uptrend while bearish order blocks are located near local tops in a downtrend.
When price mitigates (breaks out) an order block, a breaker block is confirmed. We can eventually expect price to trade back to this breaker block offering a new trade opportunity.
🔹 Buyside & Sellside Liquidity
Buyside / Sellside liquidity levels highlight price levels where market participants might place limit/stop orders.
Buyside liquidity levels will regroup the stoploss orders of short traders as well as limit orders of long traders, while Sellside liquidity levels will regroup the stoploss orders of long traders as well as limit orders of short traders.
These levels can play different roles. More informed market participants might view these levels as source of liquidity, and once liquidity over a specific level is reduced it will be found in another area.
🔹 Imbalances
Imbalances highlight disparities between the bid/ask, these can also be defined as inefficiencies, which would suggest that not all available information is reflected by the price and would as such provide potential trading opportunities.
It is common for price to "rebalance" and seek to come back to a previous imbalance area.
ICT highlights multiple imbalance formations:
Fair Value Gaps: A three candle formation where the candle shadows adjacent to the central candle do not overlap, this highlights a gap area.
Implied Fair Value Gaps: Unlike the fair value gap the implied fair value gap has candle shadows adjacent to the central candle overlapping. The gap area is constructed from the average between the respective shadow and the nearest extremity of their candle body.
Balanced Price Range: Balanced price ranges occur when a fair value gap overlaps a previous fair value gap, with the overlapping area resulting in the imbalance area.
Volume Imbalance: Volume imbalances highlight gaps between the opening price and closing price with existing trading activity (the low/high overlap the previous high/low).
Opening Gap: Unlike volume imbalances opening gaps highlight areas with no trading activity. The low/high does not reach previous high/low, highlighting a "void" area.
🔹 Displacement
Displacements are scenarios where price forms successive candles of the same sentiment (bullish/bearish) with large bodies and short shadows.
These can more technically be identified by positive auto correlation (a close to open change is more likely to be followed by a change of the same sign) as well as volatility clustering (large changes are followed by large changes).
Displacements can be the cause for the formation of imbalances as well as market structure, these can be caused by the full execution of a meta order.
🔹 Kill Zones
Killzones represent different time intervals that aims at offering optimal trade entries. Killzones include:
- New York Killzone (7:9 ET)
- London Open Killzone (2:5 ET)
- London Close Killzone (10:12 ET)
- Asian Killzone (20:00 ET)
🔶 Conclusion & Supplementary Material
This script aims to emulate how a trader would draw each of the covered features on their chart in the most precise representation to how it's actually taught by ICT directly.
There are many parallels between ICT Concepts and Smart Money Concepts that we released in 2022 which has a more general & simpler usage:
ICT Concepts, however, is more specifically aligned toward the community's interpretation of how to analyze price 'based on ICT', rather than displaying features to have a more classic interpretation for a technical analyst.
Smart Money Concepts (SMC) [LuxAlgo]This all-in-one indicator displays real-time market structure (internal & swing BOS / CHoCH), order blocks, premium & discount zones, equal highs & lows, and much more...allowing traders to automatically mark up their charts with widely used price action methodologies. Following the release of our Fair Value Gap script, we received numerous requests from our community to release more features in the same category.
"Smart Money Concepts" (SMC) is a fairly new yet widely used term amongst price action traders looking to more accurately navigate liquidity & find more optimal points of interest in the market. Trying to determine where institutional market participants have orders placed (buy or sell side liquidity) can be a very reasonable approach to finding more practical entries & exits based on price action.
The indicator includes alerts for the presence of swing structures and many other relevant conditions.
Features
This indicator includes many features relevant to SMC, these are highlighted below:
Full internal & swing market structure labeling in real-time
Break of Structure (BOS)
Change of Character (CHoCH)
Order Blocks (bullish & bearish)
Equal Highs & Lows
Fair Value Gap Detection
Previous Highs & Lows
Premium & Discount Zones as a range
Options to style the indicator to more easily display these concepts
Settings
Mode: Allows the user to select Historical (default) or Present, which displays only recent data on the chart.
Style: Allows the user to select different styling for the entire indicator between Colored (default) and Monochrome.
Color Candles: Plots candles based on the internal & swing structures from within the indicator on the chart.
Internal Structure: Displays the internal structure labels & dashed lines to represent them. (BOS & CHoCH).
Confluence Filter: Filter non-significant internal structure breakouts.
Swing Structure: Displays the swing structure labels & solid lines on the chart (larger BOS & CHoCH labels).
Swing Points: Displays swing points labels on chart such as HH, HL, LH, LL.
Internal Order Blocks: Enables Internal Order Blocks & allows the user to select how many most recent Internal Order Blocks appear on the chart.
Swing Order Blocks: Enables Swing Order Blocks & allows the user to select how many most recent Swing Order Blocks appear on the chart.
Equal Highs & Lows: Displays EQH/EQL labels on chart for detecting equal highs & lows.
Bars Confirmation: Allows the user to select how many bars are needed to confirm an EQH/EQL symbol on chart.
Fair Value Gaps: Displays boxes to highlight imbalance areas on the chart.
Auto Threshold: Filter out non-significant fair value gaps.
Timeframe: Allows the user to select the timeframe for the Fair Value Gap detection.
Extend FVG: Allows the user to choose how many bars to extend the Fair Value Gap boxes on the chart.
Highs & Lows MTF: Allows the user to display previous highs & lows from daily, weekly, & monthly timeframes as significant levels.
Premium/Discount Zones: Allows the user to display Premium, Discount, and Equilibrium zones on the chart
Usage
Users can see automatic CHoCH and BOS labels to highlight breakouts of market structure, which allows to determine the market trend. In the chart below we can see the internal structure which displays more frequent labels within larger structures. We can also see equal highs & lows (EQH/EQL) labels plotted alongside the internal structure to frequently give indications of potential reversals.
In the chart below we can see the swing market structure labels. These are also labeled as BOS and CHoCH but with a solid line & larger text to show larger market structure breakouts & trend reversals. Users can be mindful of these larger structure labels while trading internal structures as displayed in the previous chart.
Order blocks highlight areas where institutional market participants open positions, one can use order blocks to determine confirmation entries or potential targets as we can expect there is a large amount of liquidity at these order blocks. In the chart below we can see 2 potential trade setups with confirmation entries. The path outlined in red would be a potential short entry targeting the blue order block below, and the path outlined in green would be a potential long entry, targeting the red order blocks above.
As we can see in the chart below, the bullish confirmation entry played out in this scenario with the green path outlined in hindsight. As price breaks though the order blocks above, the indicator will consider them mitigated causing them to disappear, and as per the logic of these order blocks they will always display 5 (by default) on the chart so we can now see more actionable levels.
The Smart Money Concepts indicator has many other features and here we can see how they can also help a user find potential levels for price action trading. In the screenshot below we can see a trade setup using the Previous Monthly High, Strong High, and a Swing Order Block as a stop loss. Accompanied by the Premium from the Discount/Premium zones feature being used as a potential entry. A potential take profit level for this trade setup that a user could easily identify would be the 50% mark labeled with the Fair Value Gap & the Equilibrium all displayed automatically by the indicator.
Conclusion
This indicator highlights all relevant components of Smart Money Concepts which can be a very useful interpretation of market structure, liquidity, & more simply put, price action. The term was coined & popularized primarily within the forex community & by ICT while making its way to become a part of many traders' analysis. These concepts, with or without this indicator do not guarantee a trader to be trading within the presence of institutional or "bank-level" liquidity, there is no supporting data regarding the validity of these teachings.
Flux Charts - PAT Automation💎 GENERAL OVERVIEW
The PAT Automation is a powerful and versatile tool designed to help traders rigorously test their trading strategies against historical market data. With an array of advanced settings, traders can fine-tune their strategies, assess performance, and identify key improvements before deploying in live trading environments. This backtester offers a wide range of configurable settings, explained within this write-up.
Features of the PAT Automation:
Step By Step : Configure your strategy step by step, which will allow you to have OR & AND logic in your strategies.
Highly Configurable : Offers multiple parameters for fine-tuning trade entry and exit conditions.
Multi-Timeframe Analysis : Allows traders to analyze multiple timeframes simultaneously for enhanced accuracy.
Provides advanced stop-loss, take-profit, and break-even settings.
Incorporates volume-based conditions, liquidity grabs , order blocks , market structures and fair value gaps for refined strategy execution.
🚩 UNIQUENESS
The PAT Automation stands out from conventional backtesting tools due to its unparalleled flexibility, precision, and advanced trading logic integration. Key factors that make it unique include:
✅ Comprehensive Strategy Customization – Unlike traditional backtesters that offer basic entry and exit conditions, PAT Automation provides a highly detailed parameter set, allowing traders to fine-tune their strategies with precision.
✅ Multi-Timeframe Price Action Features – This is the first-ever tool that allows traders to backtest price action with multi-timeframe features such as Fair Value Gaps (FVGs), Inversion Fair Value Gaps (IFVGs), Order Blocks & Breaker Blocks.
✅ Customizable Take-Profit Conditions – Offers various methods to set take-profit exits, including using core features from price action, and fixed exits like ATR, % change or price change, enabling traders to tailor their exit strategies to specific market behaviors.
✅ Customizable Stop-Loss Conditions – Provides several ways to set up stop losses, including using concepts from price action and trailing stops or fixed exits like ATR, % change or price change, allowing for dynamic risk management tailored to individual strategies.
✅ Integration of External Indicators – Allows the inclusion of other indicators or data sources from TradingView for creating strategy conditions, enabling traders to enhance their strategies with additional insights and data points.
By integrating these advanced features, PAT Automation ensures that traders can rigorously test and optimize their strategies with great accuracy and efficiency.
📌 HOW DOES IT WORK?
The first setting you will want to set it the pyramiding setting. This setting controls the number of simultaneous trades in the same direction allowed in the strategy. For example, if you set it to 1, only one trade can be active in any time, and the second trade will not be entered unless the first one is exited. If it is set to 2, the script will handle both of them at the same time. Note that you should enter the same value to this pyramiding setting, and the pyramiding setting in the "Properties" tab of the script for this to work.
For deep backtesting, you can set "Max Distance To Last Bar" to "Unlimited". If you encounter any memory issues, try decreasing this setting to a lower value.
You can enable and set a backtesting window that will limit the entries to between the start date & end date.
Then, you can enter your desired settings to Price Action features like FVGs, IFVGs, Order Blocks, Breaker Blocks, Liquidity Grabs, Market Structures, EQH & EQL and Volume Imbalances. You can also enable and set up to 3 timeframes, which you can use later on when customizing your strategies enter / exit conditions.
Entry Conditions
From the "Long Conditions" or the "Short Conditions" groups, you can set your position entry conditions. For settings like "initial capital" or "order size", you can open the "Properties" tab, where these are handled.
The PAT Automation can use the following conditions for entry conditions :
1. Order Block (OB)
Detection: Triggered when an Order Block forms or is detected
Retest: Triggered when price retests an Order Block. A retest is confirmed when a candle enters an Order Block and closes outside of it.
Retracement: Triggered when price touches an Order Block
Break: Triggered when an Order Block is invalidated by candle close or wick, depending on the user's input.
2. Breaker Block (BB)
Detection: Triggered when a Breaker Block forms or is detected
Retest: Triggered when price retests a Breaker Block. A retest is confirmed when a candle enters a Breaker Block and closes outside of it.
Retracement: Triggered when price touches a Breaker Block
Break: Triggered when a Breaker Block is invalidated by candle close or wick, depending on the user's input.
3. Fair Value Gap (FVG)
Detection: Triggered when an FVG forms or is detected
Retest: Triggered when price retests an FVG. A retest is confirmed when a candle enters an FVG and closes outside of it.
Retracement: Triggered when price touches an FVG
Break: Triggered when an FVG is invalidated by candle close or wick, depending on the user's input.
4. Inversion Fair Value Gap (IFVG)
Detection: Triggered when an IFVG forms or is detected
Retest: Triggered when price retests an IFVG. A retest is confirmed when a candle enters an IFVG and closes outside of it.
Retracement: Triggered when price touches an IFVG
Break: Triggered when an IFVG is invalidated by candle close or wick, depending on the user's input.
5. Break of Structure (BOS)
Detection: Triggered when a BOS forms or is detected
6. Change of Character (CHoCH)
Detection: Triggered when a CHoCH forms or is detected
7. Change of Character Plus (CHoCH+)
Detection: Triggered when a CHoCH+ forms or is detected
8. Volume Imbalance (VI)
Detection: Triggered when a Volume Imbalance forms or is detected
9. Equal High (EQH)
Detection: Triggered when an EQH is detected
10. Equal Low (EQL)
Detection: Triggered when an EQL is detected
11. Buyside Liquidity Grab
Detection: Triggered when a liquidity grab occurs at Buyside Liquidity (BSL).
12. Sellside Liquidity Grab
Detection: Triggered when a liquidity grab occurs at Sellside Liquidity (SSL).
🕒 TIMEFRAME CONDITIONS
The PAT Automation supports Multi-Timeframe (MTF) features, just like the Price Action Toolkit. When setting an entry condition, you can also choose the timeframe.
To set up MTF conditions, navigate to the 'Timeframes' section in the settings, select your desired timeframes, and enable them. You can choose up to three timeframes.
Once you've selected your timeframes, you can use them in your strategy. When setting long and short entry / exit conditions, you can choose from Timeframe 1, Timeframe 2, or Timeframe 3.
External Conditions
Users can use external indicators on the chart to set entry conditions.
The second dropdown in the external condition settings allows you to choose a conditional operator to compare external outputs. Available options include:
Less Than or Equal To: <=
Less Than: <
Equal To: =
Greater Than: >
Greater Than or Equal To: >=
The position entry conditions work like this ;
Each side has 5 Price Action conditions and 1 Source condition. Each condition can be enabled or disabled using the checkbox on the left side.
For Price Action Conditions, you can set a direction: "Any", "Bullish" or "Bearish".
Then a Price Action Feature, like "FVG" or "Order Block".
The last part of our constructed condition is the alert type, which you can select between "Detection", "Retest", "Retracement" or "Break".
Now you should have a constructed condition, which should look like "Bullish Order Block Retest".
You can select which timeframe should this condition work on from Timeframe 1, 2 or 3. If you select "Any Timeframe", the condition will work for all timeframes.
Lastly select the step of this condition from 1 to 6.
The Source Condition
The last condition on each side is a source condition that is different from the others. Using this condition, you can create your own logic using other indicators' outputs on your chart. For example, suppose that you have an EMA indicator in your chart. You can have the source condition to something like "EMA > high".
The Step System
Each condition has a step number, and conditions are in topological order based on them.
The conditions are executed step by step. This means the condition with step 2 cannot be executed before the condition with step 1 is executed.
Conditions with the same step numbers have "OR" logic. This means that if you have 2 conditions with step 3, the condition with step 4 can trigger after only one of the step 3 conditions is executed.
➕ OTHER ENTRY FEATURES
The PAT Automation allows traders to choose when to execute trades and when not to execute trades.
1. Only Take Trades
This setting lets users specify the time period when their strategy can open or execute trades.
2. Don't Take Trades
This setting lets users specify time periods when their strategy can't open or execute trades.
↩️ EXIT CONDITIONS
1. Exit on Opposite Signal
When enabled, a long position will close when short entry conditions are met, and a short position will close when long entry conditions are met.
2. Exit on Session End
When enabled, positions will be closed at the end of the trading session.
📈 TAKE PROFIT CONDITIONS
There are several methods available for setting take profit exits and conditions.
1. Entry Condition TP
Users can use entry conditions as triggers for take-profit exits. This setting can be found under the long and short exit conditions.
2. Fixed TP
Users can set a fixed TP for exits. This setting can be found under the long and short exit conditions. Users can choose between the following:
Price: This method triggers a TP exit when price reaches a specified level. For example, if you set the Price TP to 10 and buy NASDAQ:TSLA at $190, the trade will automatically exit when the price reaches $200 ($190 + $10).
Ticks: This method triggers a TP exit when price moves a specified number of ticks.
Percentage (%): This method triggers a TP exit when price moves a specified percentage.
ATR: This method triggers a TP exit based on a specified multiple of the Average True Range (ATR).
📉 STOP LOSS CONDITIONS
There are several methods available for setting stop-loss exits and conditions.
1. Entry Condition SL
Users can use entry conditions as triggers for stop-loss exits. This setting can be found under the long and short exit conditions.
2. Fixed SL
Users can set a fixed SL for exits. This setting can be found under the long and short exit conditions. Users can choose between the following:
Price: This method triggers a SL exit when price reaches a specified level. For example, if you set the Price SL to 10 and buy NASDAQ:TSLA at $200, the trade will automatically exit when the price reaches $190 ($200 - $10).
Ticks: This method triggers a SL exit when price moves a specified number of ticks.
Percentage (%): This method triggers a SL exit when price moves a specified percentage.
ATR: This method triggers a SL exit based on a specified multiple of the Average True Range (ATR).
3. Trailing Stop
An explanation & example for the trailing stop feature is present on the write-up within the next section.
Exit conditions have the same logic of constructing conditions like the entry ones. You can construct a Take-Profit Condition & a Stop-Loss Condition. Note that the Take-Profit condition will only work if the position is in profit, regardless of if it's triggered or not. The same applies for the Stop-Loss condition, meaning that it will only work if the position is in loss.
You can also set a Fixed TP & Fixed SL based on the price movement after the position is entered. You have options like "Price", "Ticks", "%", or "Average True Range". For example, you can set a Fixed TP like "5%", and the position will be entered once it moves 5% up in a long position.
Trailing Stop
For the Fixed SL, you also have a "Trailing" stop option, which you can set it's activation level as well. The Trailing stop activation level and it's value are expressed in ticks. Check this scenerio for an example :
We have a ticker with a tick value of $1. Our Trailing Stop is set to 10 ticks and activation level is set to 30 ticks.
We buy 1 contract when the price is $100.
When the price becomes $110, we are in $10 (10 ticks) profit and the trailing stop is now activated.
The current price our stop's on is $110 - $30 (30 ticks), which is the level of $80.
The trailing stop will only move if the price moves up the highest high the price has been after we entered the position.
Let's suppose that price moves up $40 right after our trailing stop is activated. The price will now be $150, and our trailing stop will sit on $150 - $30 (30 ticks) = $120.
If the price is down the $120 level, our stop loss will be triggered.
There is also a "Hard SL" option designed for a backup stop-loss when trailing stops are enabled. You can enable & set this option and if the price goes down before our trailing stop even activates, the position will be exited.
You can also move stop-loss to the break-even (entry price of the position) after a certain profit is achieved using the last setting of the exit conditions. Note that for this to work, you will need to have a Fixed SL set-up.
➕ OTHER EXIT FEATURES
1. Move Stop Loss to Breakeven
This setting allows the strategy to automatically move the SL to Breakeven (BE) when the position is in profit by a certain amount. Users can choose between the following:
Price: This method moves the SL to BE when price reaches a specified level.
Ticks: This method moves the SL to BE when price moves a specified number of ticks.
Percentage (%): This method moves the SL to BE when price moves a specified percentage.
ATR: This method moves the SL to BE when price moves a specified multiple of the Average True Range (ATR).
Example Entry Scenario
To give an example , check this scenario; out conditions are :
LONG CONDITIONS
Bullish Order Block Detection, Step 1
Bullish CHoCH Detection, Step 2
Bullish Volume Imbalance Detection, Step 2
Bullish IFVG Retest, Step 3
First, the strategy needs to detect a Bullish Order Block in order to start working.
After it's detected, now it's looking for either a CHoCH, or a Volume Imbalance to proceed to the next step, the reason for this is that they both have the same step number.
After one of them is detected, the strategy will consistently check all IFVGs for a retest. If the retest occurs, a long position will be entered.
⏰ ALERTS
This indicator uses TradingView's strategy alert system. All entries and exits will be sent as an alert if configured. It's possible to further customize these alerts to your liking. For more information check TradingView's strategy alert customization page: www.tradingview.com
⚙️ SETTINGS
1. Backtesting Settings
Pyramiding: Controls the number of simultaneous trades allowed in the strategy. This setting must have the same value that is entered on the script's properties tab on the settings pane.
Max Distance to Last Bar: Determines the depth of historical data used to prevent memory overload.
Enable Custom Backtesting Period: Restricts backtesting to a specific date range.
Start & End Time Configuration: Define precise start and end dates for historical analysis.
2. Fair Value Gaps Settings
Zone Invalidation: Select between "Wick" and "Close" invalidation.
Filtering: Choose between "Average Range" and "Volume Threshold".
FVG Sensitivity: Ranges from Extreme to Low to detect FVGs with varying strictness.
Allow Gaps: Enables analysis on tickers that have different open-close price gaps.
3. Inversion Fair Value Gaps Settings
Zone Invalidation: Choose between "Wick" and "Close".
4. Order Block Settings
Swing Length: Adjusts the minimum number of bars required for OB formation.
Zone Invalidation Method: Select between "Wick" and "Close".
5. Breaker Block Settings
Zone Invalidation: Set invalidation method as "Wick" or "Close".
6. Liquidity Grabs Settings
Pivot Length: Adjusts the number of bars used to detect liquidity grabs.
Wick-Body Ratio: Defines the proportion of wick-to-body size for liquidity grab detection.
7. Multi-Timeframe Analysis
Enable Up to Three Timeframes: Select and analyze trades across multiple timeframes.
8. Market Structures
Swing Length: Defines the number of bars required for structure shifts.
Includes BOS, CHoCH, CHoCH+ Detection.
9. Equal Highs & Lows
ATR Multiplier: Defines the sensitivity of equal highs/lows detection.
10. Volume Imbalances
Gap Size Sensitivity: Ranges from "Ultra" to "Low".
Disable Overnight Gaps: Filters out volume imbalances occurring due to overnight gaps.
11. Entry Conditions for Long & Short Trades
Multiple Conditions (1-6): Configure up to six independent conditions per trade direction.
Condition Types: Options include Detection, Retest, Retracement, and Break.
Timeframe Specification: Choose between "Any Timeframe", "Timeframe 1", "Timeframe 2", or "Timeframe 3".
Trade Execution Filters: Restrict trades within specific trading sessions.
12. Exit Conditions for Long & Short Trades
Exit on Opposite Signal: Automatically exit trades upon opposite trade conditions.
Exit on Session End: Closes all positions at the end of the trading session.
Multiple Take-Profit (TP) and Stop-Loss (SL) Configurations:
TP/SL based on % move, ATR, Ticks, or Fixed Price.
Hard SL option for additional risk control.
Move SL to BE (Break Even) after a certain profit threshold.
Smart Money Setup 07 [TradingFinder] Liquidity Hunts & Minor OB🔵 Introduction
The Smart Money Concept relies on analyzing market structure, tracking liquidity flows, and identifying order blocks. Research indicates that traders who apply these methods can improve their accuracy in predicting market movements by up to 30%.
These elements allow traders to understand the behavior of market makers, including banks and large financial institutions, which have the ability to influence price movements and shape major market trends. By recognizing how these entities operate, traders can align their strategies with Smart Money actions and better anticipate shifts in the market.
Smart Money typically enters the market at points of high liquidity where trading opportunities are more attractive. By following these liquidity flows, professional traders can position themselves at market reversal points, leading to profitable trades.
The Smart Money Setup 07 indicator has been specifically designed to detect these complex patterns. Using advanced algorithms, this indicator automatically identifies both bullish and bearish trading setups, assisting traders in discovering hidden market opportunities.
As a powerful technical analysis tool, the Smart Money Setup indicator helps predict the actions of major market participants and highlights optimal entry and exit points. Essentially, this tool enables traders to act like institutional investors and market makers, making the most of price fluctuations in their favor.
Ultimately, the Smart Money Setup 07 indicator transforms complex technical analysis into a simple and practical tool. By detecting order blocks and liquidity zones, this tool helps traders execute their strategies with greater precision, leading to more informed and successful trading decisions.
🟣 Bullish Setup
🟣 Bearish Setup
🔵 How to Use
One of the key strengths of the Smart Money Setup 07 indicator is its ability to accurately identify order blocks and analyze liquidity flows. Order blocks represent areas where large buy or sell orders are placed by Smart Money investors, which often indicate key reversal points in the market. Traders can use these order blocks to pinpoint potential entry and exit opportunities.
The Smart Money Setup indicator detects and visually displays these order blocks on the chart, helping traders identify the best zones to enter or exit trades. Since these zones are frequently used by large institutional investors, following these blocks allows traders to capitalize on price fluctuations and trade with confidence.
🟣 Bullish Smart Money Setup
A Bullish Smart Money Setup forms when the market creates Higher Lows and Higher Highs. In this situation, the indicator analyzes pivot points, liquidity flows, and order blocks to identify buy opportunities. Liquidity points in these setups indicate areas where Smart Money is likely to enter long positions.
In the bullish setup image, multiple Higher Lows and Higher Highs are formed. The green zone represents a Bullish Order Block, signaling traders to enter a long trade. The Smart Money Setup indicator displays a green arrow, indicating a high-probability upward price movement from this liquidity zone.
🟣 Bearish Smart Money Setup
A Bearish Smart Money Setup occurs when the market structure shows Lower Highs and Lower Lows, indicating weakness in price. The indicator identifies these patterns and highlights potential sell opportunities. Liquidity points in this setup mark areas where Smart Money enters sell positions.
In the bearish setup image, a Lower High is followed by a Lower Low, with the red liquidity zone acting as a Bearish Order Block. The Smart Money Setup indicator shows a red arrow, signaling a likely downward move, offering traders an opportunity to enter short positions.
🔵 Settings
Pivot Period : This setting determines how many candles are needed to form a pivot point. A default value of 2 is optimal for quickly identifying key pivot points in price action.
Order Block Validity Period : This parameter defines the lifespan of an order block. Traders can adjust how long each order block remains valid. For instance, setting it to 500 means that an order block will be valid for 500 bars after its formation.
Mitigation Level OB : This setting allows traders to select whether order blocks should be based on the "Proximal," "50% OB," or "Distal" levels, helping traders manage risk more effectively.
Order Block Refinement : Traders can refine the order blocks with precision. The indicator offers two refinement modes: Defensive and Aggressive. The Defensive mode identifies safer order blocks, while the Aggressive mode targets higher-risk blocks with the potential for larger reversals.
🔵 Conclusion
The Smart Money Setup 07 indicator is a powerful tool for identifying key Smart Money movements in the market. It provides traders with essential insights for making informed trading decisions, particularly when combined with technical analysis and liquidity flow analysis. This indicator allows traders to accurately pinpoint entry and exit points, helping them maximize profits and minimize risk.
By offering a range of customizable settings, the Smart Money Setup indicator adapts to different trading styles and strategies. Furthermore, its ability to detect order blocks and identify supply and demand zones makes it an indispensable tool for any trader looking to enhance their strategy.
In conclusion, the Smart Money Setup 07 is a crucial tool for traders aiming to optimize their trading performance. By utilizing the concepts of Smart Money in technical analysis, traders can make more precise decisions and take advantage of market fluctuations.